When comparing MonoGame vs UDK, the Slant community recommends MonoGame for most people. In the question“What are the best 2D game engines?” MonoGame is ranked 15th while UDK is ranked 64th. The most important reason people chose MonoGame is:
Support for iOS, Android, Mac OS X, Linux, Windows (both OpenGL and DirectX), Windows 8 Store, Windows Phone 8, PlayStation Mobile, PlayStation 4, Xbox One, Nintendo Switch, and the OUYA console with even more platforms on the way.
Ranked in these QuestionsQuestion Ranking
Pro Open source
All the code is available to you ensuring you'll have the ability to make changes when you need to or even port to whole new platforms.
Pro Managed code
By leveraging C# and other .NET languages on Microsoft and Mono platforms you can write modern, fast, and reliable game code.
Pro Good community
The community MonoGame has to offer is helpful and mature.
Pro Well-known and documented API
The framework implements the XNA 4 API, so games made in XNA can be ported to other platforms using this. This was the same API used by the Xbox Live Indie Games platform so there's lots of documentation online for it.
Pro Performance on desktop
The performance on desktop platforms matches that of C++, but you still get all the pleasant features that C# has to offer.
Pro Large toolset
UDK has an extremely large toolset that allows creating almost anything without having to use a 3rd party tool or plugin.
Pro Triple A track record
UDK is an engine used by many big name companies for popular games such as the Gears of War series.
Con Non-Windows tools are a bit funky
Monogame support for Xamarin Studio or Monodevelop is a bit shaky especially for library references. Only good non-Windows IDE compatible with MonoGame is Rider and that costs money & isn't open-source.
Con Superseded by Unreal Engine 4
Con DevKit only runs on Windows
Even though UDK can deploy games to run on multiple platforms, including Mac, it does not feature support for development on Mac.
Con Limits games to FPS
UDK was originally developed for the FPS, "Unreal Tournament", and it certainly shows. While UDK is a very powerful engine, it takes quite a bit of work to make it do something other than an FPS.