Talk therapy will help you a lot. What's the most important is the connection you have with your therapist, less so their qualification (ie a psycho therapist you connect with is better than a psychiatrist you don't). For me I had a psychologist for about two years and I now am with a psychotherapist. I've had several types of doctors/therapists over the years.
I self harmed for years since I was a teenager, in ways that have left me with lots of scarring. I haven't cut myself in about five years now, even though when Im stressed/upset I do think of it (of course I do, it was my way to cope for so many years). For me what helped reducing the self harm, besides therapy and meds (I was on various antidepressants for years), was coming up with other ways to cope, and also realising what it was I was trying to avoid when I self harmed. I self harmed to avoid feeling horrific feelings that scared the shit out of me, because cutting myself was less scary and painful than actually sitting with the feelings (by that I mean just sitting there for about twenty seconds, and just experiencing the feeling, which often feels like massive waves of panic, before doing one of my other strategies).
A lot of people don't seem to realise that SH is addictive. The routine of self harming and then caring for yourself afterwards is hard to break. And that feeling of "being good at something", I know exactly what you mean. I said it to my doctors a few times, because it does feel like being good at something most others can't do, doesn't it. When I was really unwell and SH a lot, I was somehow proud of what I'd done to myself, it's hard to explain that to people who haven't done it or don't get that feeling. Even though I haven't done it in years, I still feel like that every so often. Don't feel ashamed of it, but do realise that there are many things you are good at and are valuable for, and that is just one part of who you are, but a part that doesn't need to be the biggest part.
What helped me cope in the actual moment of wanting to self harm changed over time, as I started to get better. In the beginning when I was doing it every day, I used to say I would write in my special notebook for even just a sentence or word before getting my things ready to SH. Over time I would write my thoughts and feelings and many times I avoided an instance of SH by doing this, because the writing helped those intense feelings pass. The other thing that helped me was doing some sort of cardiac intense sport, if I was feeling those intense feelings, I would just put my shoes on and run outside, even just a quick burst (I am not a runner nor athletic). Somehow that would help get the energy out, and then I could sit and write my word or sentence, and if at the end of that I still wanted to SH, I wouldn't hate myself for doing it. I just gave myself options, which I how I viewed them. I also started painting/drawing (not that helpful when I was feeling the intense feelings, as in I wouldnt paint instead of SH, but I would paint when I wasn't feeling that way), which was actually a good outlet even though it doesn't seem it at the time.
Now I kind of think of it as an addiction I got over. I won't hate myself if I do it again, but I don't need to do it again, because I don't want to start doing it again. Life is a lot easier without being careful with what I wear, or worrying about infections, or anaemia or whatever, or what people say to me or worrying about me.
You don't have to SH for the rest of your life, it's not something you're doomed to. It's possible to recover from it, and little steps, like not doing it just one time, are successes. If you manage to sit with your feelings and then after a few mins do something else (call a friend, play a video game, knit, Netflix, whatever), and realise that the horrifying feeling has passed and you haven't SH, then it's a massive win. It's ok if you do it again after that, but that one time you didn't do it feels good, and over time you have more of those.
Sorry this got quite long, but the gist of it is that you'll be fine and will live a life you value. Definitely speak to your GP and get the ball rolling with talk therapy, it is a very kind thing to do for yourself. Xx