Programming is only one of the disciplines within game development. If you've already decided you want to become a programmer, then learning C++ or C#, or both, is something you'll need to do. The internet is full of helpful instructions on how to pursue this, and all the tools you need are free. After getting basic mastery of programming, you'll have to learn about the various systems that go into a game, and possibly specialize in one or a few of those.
Or perhaps being a graphical artist is more for you? There are pixel-art artists, texture artists, environmental 3D artists, character 3D artists, 2D and 3D animators, you name it. The internet is also shock full of instructions on how to get started on building either of those skills, and you can find free tools to do anything you need.
Lets not forget musicians and sound- and special-effects artists, and voice actors; few games would be complete without music and sound. Again, the internet, yadda yadda.
There are also designers. Anything from level designers, to interaction and gameplay designers, writers, and the list goes on. This is typically what people envision when they think “game designer”; someone with the big ideas that everyone else then implement. The reality isn't quite like that though, and you'll be well served to start out with pursuing some productive skill .
If you want a career in large game companies, you'll typically need to specialize in a very narrow slice of this, whereas if you want to work in a small company or even start out for yourself, you'll be wearing many hats. There are pros and cons to each, but personally I think everyone would benefit from having tried a wider set of roles for at least some period of their life.