When I was looking to make a change in my game engine, I looked at App Game Kit, Unity, GameMaker Studio, and Unreal.
Being a C++ coder with games since the '80s, App Game Kit was a very easy to understand engine for me. It takes just a few lines of code to throw thousands of sprites on the screen to test the engine for performance. (Which was very good, even with its easy to use BASIC variation.) The problem with AGK is that only one person is working on it, and things seem to be moving very slowly. There are other issues as well when you compare to the other engines. But for simple (or not so simple) 2D games, one can either use BASIC or C++ and create just about anything they can imagine. It would be nice to see it have more resources behind it, though. But I think I will use it for some things, given how easy it is to use.
With all the fuss about Unity, I tested it out. At first it seemed promising. But then it just seemed downright frustrating in ways. Also, on forums like Steam, it appears to be getting a bad reputation. Games made with it can suffer from stuttering and poor performance. Even nice-looking games like the recently released 'Ori and the Blind Forest' had issues for users. This may change with Unity 5, but I was testing 4. Also, coming from a pure coding background, using Unity to make games reminded me somewhat of using Dreamweaver to create websites... which may be great for designers and artists or even beginning programmers who don't know or want to learn how to code to any great extent. But if an engine is known to suffer from poor performance with certain games or even a poor reputation... that's can be a deal-breaker for me.
GameMaker Studio worked well and had very good performance, (not using Drag & Drop, I'm referring to using GML), although it uses a somewhat wonky way of putting programs together which may be fine and very easy for some. But it also has some reputation issues that I suppose stem from the fact that it has been known as a development kit for beginners.
Unreal was the best of the choices in my view. Performance is great and the reputation of the engine is also very good, as it should be, given the number of incredible high-profile games that have been created with it.
On a totally unrelated side note, I think one has to be careful when naming one's game engine. Unity and Unreal are great names, while GameMaker and App Game Kit... not so much. The latter two can give one the impression that they're made for beginners, even if they're good enough for pros.
And on another note about Unity... I get the impression that a lot of hype surrounds it which is the reason why it has gotten so much attention and developers have flocked to it. The Unity people seem to know how to market their engine incredibly well, even having their 'Unite Award Show' (available to watch on YouTube) to make them appear like a very strong force in the game engine market. (Even though the card in the 'envelope' for the winners were just 'Happy Birthday' cards. That seemed a bit amateurish to me.) Having a great-looking website and strong community doesn't hurt, either. Now if only the game engine's performance is improved with Version 5...