I'm currently studying game design myself and here are some things to consider: Game designer is a very broad term covering a ton of potential careers. This includes: 2D artist, Music/ Sound composer, 3D Modeler ( we really need those), programmers(primarily in JavaScript and C++/C#), level designers, character designers, and the list goes on. I recommend choosing 2-3 of those and specialize in them.
As for programs to learn: I think the people above me covered the game engines quite well so I'll talk about the other software.
Blender: Fantastic open source 3d modeling and animation program.
Photoshop or GIMP: needed to make textures and art for your game.
Audacity: for recording or creating sound effects.
Some kind of IDE for programming. Unity comes with monodevelop included in the install, but I use Visual Studio myself for programming as it has a more robust set of features.