Since both of the engines have a free option, try to use both of them and see which one fits your needs. That should answer your programming pros & cons.
Marketing depends on your skills and not the engine that you use.
You could also consider Construct 2. It's very quick and to get a basic game up and running using built in "behaviours", and programming is done through a visual "event" system. It's similar to Game Maker, but I think the interface is a bit nicer.
Scratch is a good option though.
Construct2 would be my second choice after Scratch, with GameMaker a close third.