For which platform? How much programming do you want to do? What kind of 2D game is it? Free or non free? Do you need anything extra? Physics? Particle effects? Etc.
There are lots of considerations that are a factor in what technology you use. There is no one 'super' answer.
4) No. Scripting languages ARE programming language in the strictest sense. If you are scripting, you are programming.