Check out the three stickied threads here. And if you don't have the money for those programs then you can make games for free with the programs mentioned in this thread. However, if you decide to use a free program and want to submit games to Armor Games then you'll have to go with either Stencyl or Flashdevelop. Game Maker games can't be submitted to Armor Games because the files aren't in a .swf format and it's impossible to make them into one I believe.