The only alternative to MonoGame, as far as I am aware, is ExEn, which is a library I made. It's missing several XNA features (it only works for
SpriteBatch games). The code quality is widely considered to be superior to MonoGame's (although it has been a while since I have looked myself).
MonoGame, I think, gives a lot more guidance to beginners. ExEn expects you to be a competent coder and not afraid to read source code (especially the samples).
I have no idea whether ExEn will still work unmodified. The have been lots of iOS and Mono updates, and I have not updated ExEn for a long time.
Both ExEn and MonoGame require Xamarin's Mono for iOS / Mono for Android as the underlying platform.
Basically MonoGame and ExEn each provide an implementation of XNA. While Mono provides an implementation of .NET.
Unity requires you port from XNA to its own API.