there are several approaches;
one is to learn programming, i.e. a programming language and libraries' API that can be useful for game programming.
the language(s) should be C (or C++), imho it's the best for the purpose.
you need also learning a library's API which allow you to make graphics.
for 3D games OpenGL is the standard, even though, as usual, microsoft has its own product, which is DirectX. if you choose DirectX / 3D, your game will have as target microsoft machines (windows, xbox, and any other place where DirectX is supported).
with OpenGL, you get all the rest.
along side OpenGL (mainly for 3D), you can use other interesting libraries like SDL and Allegro.
in order to give life to your games, you need a compiler for the chosen language and likely you would like to work with an IDE, which may help, but is is not mandatory: an advanced editor could be enough (at least at the beginning)
the compiler should be gcc: it compiles to a pletora of hardwares and it's a very good compiler (it's one of the top GNU sw); but of course you can choose the microsoft alternative, or any other standard C/C++ compiler.
to create graphics you also will need graphics programs (and likely a person that is able to use them efficiently), and for music... ok, a good game it's a really hard thing and you need not only programming if you want to make it for real.
starting point: an IDE with a compiler.
DevC++ it's easy and good enough, but I suggest you not to download the one with the compiler, since it has an old version; rather install the compiler apart:
http://www.mingw.org/
and then only the IDE
http://prdownloads.sourceforge.net/dev-cpp/devcpp-4.9.9.2_nomingw_setup.exe
(go to sf directly for past versions if this last one has problems)
graphics libs worth noting
http://www.opengl.org/
http://www.libsdl.org/
http://alleg.sourceforge.net/
microsoft directx
http://msdn.microsoft.com/en-us/directx/default.aspx