Why is Unity the most popular engine?

I am coming to UE4 from Unity and I can tell you that MonoDevelop (the default IDE) on Windows is an even bigger piece of **** than VS. I use the Visual Assist plugin for my UE4 projects which makes everything tolerable in VS so it’s almost as fast as the intellisense for C#. In terms of usability, Unity is still using a version of Mono (2.6.5 I believe, which came out in 2009) that has a nasty bug in it preventing people from using a foreach loops amongst a few other bugs that aren’t present in updated versions (even an update to 2.8 would give them C# 4 features but Mono 4.0 supports C# 6).

Unity was easy enough for me to learn the concepts of how making larger games work, but the severe lack of functionality out of the box, the reliance on the Asset Store, the poor performance on detailed/large scenes, their push for useless features over bug fixes, and the terrible new pricing drove me off to UE4. Granted it’s going to take a minute to learn the UE4 way of doing things but it’s a lot of fun being able to use blueprints for the simple behaviors and C++ for more complex or specific things. At this point between the two engines, I would use Unity for 2D and mobile projects and UE4 for everything else.