If Microsoft starts working on its own Unity-clone, with a functional language, advanced concurrency features, and good incremental GC, they could be sure to capture a big chunk of the mindshare of game developers. This could then be parlayed into mindshare of soft-realtime development, which will become ever more important.
Haskell has significant contributions by folks at Microsoft and is a beautiful functional language with state of the art concurrency, decent GC, and a hardcore fan base.
Not a Unity clone, but a neat, related project is Casanova (https://casanova.codeplex.com/). It's an F# API (more like an EDSL) which allows you to program against Unity in a very functional style.
Integrate all the good parts from VS to the "Unity-clone" and top it with nice indie-license. Bake modularity into so that you can build the game with feature-toggles and control the flags from the server. Ship the game to testers and enable one flag at a time to see when things crash (no need to wait x0min for the new build to finish). Make testing easier and integrate it with some build engine (jenkins, TFS), enable REST api so you can get all the game element information through it. Those features would make the life, of an test automation engineer, a walk in the park :)
XNA was quite far from what Unity is. Unity gives you a full engine, whereas XNA was a framework and you had to build the engine yourself. It was a great little library, but it was painful for unskilled software developers (myself at the time) to use it compared to Unity's WYSIWYG and property lists you could modify, not to mention all of the things that came with Unity that you'd have to build custom in XNA.
That's not to say Unity is better, it was just easier to use.