This is my first question asked on StackOverflow. I want to ask the more experienced game developers which is better MonoGame or Unity3D. My intention is to learn one of these to enable me to create my own Android and possibly Windows games using C#. Which of these would be best suited for the creation of Android games? I'm looking at mainly making 2D games. It would be greatly appreciated if someone could outline the difference between these tools besides one being an engine and the other a framework. I also apologize if anything in this post sounds stupid or is incorrect. In my defence I'm a beginner when it comes to game development.
I assume you are a beginner so I suggust you use Unity3D. Never worked with Unity, but I know there is a lot already implemented for you. For example: animations, gravity and collision. Class mates told me it wasn't realy that hard(for a software engineer student). They used it for an AI project.
I took XNA lesson and XNA and monogame are pretty much the same. Monogame is a low level platform. You have to implement it all by youself. I wouldn't realy call it an engine, but more like a framework.
Since XNA is dead, I asked my teacher: "Why are we learning XHA, if XNA is dead?" Well, we didn't learn xna, because XNA is so amazing, but because it is low level. If you know how to do it with XNA, you probably will be able to work with any other low level envirionment. Therefor again, I would use Unity if I were you.