Lessons can certainly help, but you need to find the right instructor and be able to "connect" with them. Here's an example:
I've been fighting my irons for a looong time. Generally, I just can't even get them airborne. I shank them, hit 'em fat, top them, you name it. I had no confidence whatsoever, especially on par 3 tee boxes.
I took a series of lessons from Chris Cone (David Cone's brother) a couple of years ago. He got me hitting well during the lesson but it didn't translate to the course. I just never really connected with him.
Last year I bought another package of five 1 hour lessons with a different instructor. I could tell immediately I connected with him better. He was able to explain my swing in a way that made sense to me and I could "feel" the changes in my swing. It didn't immediately improve my game on the course, but I kept practicing the things he taught me. Saturday I had probably one of the best rounds I've ever had, especially with regard to my iron play. I hit one really bad iron shot (shanked). The rest were a mix of really good to "almost there". Here are two examples of shots that I never make.
#1 - I've been struggling with my usually reliable driver. I slice my drive on the first hole into the rough and left a pretty long approach of nearly 180 yards. I figured I'd hit the 4i and hopefully get it close. I smoked the damn thing and ended up on the green. Of course, I three putted it.
#2 - A fairly short hole on #13 and I again sliced it badly and was 170+ yards out with the ball sitting down in some thick clover. Pulled the 4i again and put it on the front of the green. I got it down in two for the par this time.