What is your end goal? Are you just a hobbyist game developer or are you planning to break into the Industry in the future? If you're a hobbyist then I think you really need to be a good programmer, as you are the all around guy. If you want to break into the industry, what position are you thinking? A game designer, level designer doesn't really need intensive programming skills. You just need to have good imagination and familiarization with the tools. But if you want to do gameplay, you will need programming.
As to what language, for a beginner, I would suggest C#. Then play with Unity. As a beginner, you probably won't need a license for Unity. Unity Free version would definitely be enough to get you going. C++ is rather a difficult language. It is nice to dig deep into that when you are comfortable with programming.