Flash isn't the only language that you can use to make games. But it is the easiest.
You can use Java to make games but there is a lot more coding and the Java language is a lot more complex. But the software to compile the scripts are free, and mostly all of the IDE's are free as well.
I personally like to command based scripting because I don't have to learn how to use a certain IDE.
But yeah, most people use flash to make games because it is easier. The software is made by Adobe INC. It's around 700 dollars like others have said but there are other means of getting software, but I'm not going to tell you how, or what it is. It is illegal and you shouldn't do it.
Hope this helped mate.
~BI