Newbie advice on whether Monogame or Unity or ?? is the right way to go for 2D Mobile

Hi All,

Just looking for knowledgeable input into a decision that I have to make. I’m looking to commit to either Monogame or Unity as a development platform for 2D mobile games. I know how to do basic Console type programming in C# and I’ve used a couple of game creation packages but not Unity.

Here is where I am at the moment. I like the idea of Monogame since it moves you closer to unrestricted programming without hitting blockers the way you often do when using some game creation software. However, I’ve just bought the latest edition of RB Whitaker’s truly excellent C# Players Guide and while thumbing through the glossary I came across the description of Mono (which i understand the Monogame framework is based), it says that Mono is now largely superseded by .Net Core and >net. Now that being the case and forgive my ignorance here, does that mean that Monogame is likely to quickly fall out of date? Would I be better going for a more heavy duty game creation tool like Unity rather than the monogame framework.

Is there a 3rd option that I haven’t considered?

Grateful for any words of wisdom.



I don’t think MonoGame will become out of date just because of Mono itself being less relevant in a time where .NET 6 exists. It may be called MonoGame, but, as far as I know, it’s not dependent on Mono. That was just the framework/runtime that was used to make cross-platform games possible back when the only official .NET framework/runtime was still Windows-only. MonoGame is fully compatible with .NET 6, at least on PC. I’m not sure about Android since I don’t make games that target mobile.

As for Unity vs. MonoGame, that depends on the preferences of the individual, and can’t be definitively decided by outsiders. Obviously, you’ll find users on the MonoGame forum more likely to recommend MonoGame, and users on the Unity forum more likely to recommend Unity, but it’s all subjective. You don’t have to commit to one or the other right away. I would recommend trying both, getting a feel for both using some sort of test project. That’s the only way you’ll be able to figure out for yourself which one you’d rather use.

As for a third option, if you’re looking for one, you can investigate Godot. It has more in common with Unity than MonoGame, I believe, but it’s entirely open-source and does not come with the licensing limitations that Unity does. It allows you to script in multiple languages, including C#.

I haven’t seriously tried Unity or Godot myself and only have experience working with MonoGame.

I would do the game in Monogame, but GoDot might be a third option. It has a good reputation for making 2D games and is lightweight and royalty free. Check out some GoDot videos on Youtube to see if you like it.

Thanks a lot for the advice folks. I’m going to do as Hopeful suggests and have a look at Unity and Monogame.

Thanks for clearing up my understanding of the Mono/Monogame dependencies.



Just to add my 2 cents, I spent a lot of time working with Unity, but did not really feel myself grow as a developer until working with monogame/xna and having to solve certain problems “the hard way”. Also really like the fact that I have pixel control over my sprites so easily. If you are like me and are here for the fun/learning experience I have been really enjoying the challenge of making a game with monogame.


Take into consideration that Apple will eventually ditch OpenGL, and will only support Metal, which is nowhere near in sight for MonoGame. That actually worries me quite a lot.

Thanks and yes this is exactly the kind of thing that worries me. My own experience when a certain game engine maker effectively just abandoned Apple support when a bit of effort was required to make their engine compliant leaving my plans (and a few others I bet) in ruins. I’d certainly like to avoid any future mistakes.

1 Like

I suspect that an announcement from Apple about support for OpenGL being dropped at such and such date would kick the addition of Metal support into top priority for the MonoGame team.

While I wouldn’t be surprised if Apple does decide to drop a perfectly functional graphics API in favor of their proprietary one, it would presumably render countless apps non-functional as a result. Seems like a poor business decision.

Apple was always able to get away with poor business decisions, so I’m just waiting for the chaos after they really do it :slight_smile: