MonoGame is a free XNA-compatible library that allows you to create games in C # for WinRT, Windows Store and Windows Phone 8, as well as on top of Xamarin tools for iOS and Android. This runs on top of SharpDX, an optimized managed shell for DirectX, so your game runs pretty much the same speed as XNA.
Since MonoGame is open source, actively developed and aimed at all current platforms, you probably should not worry about it becoming obsolete soon. This gives you a great way for your C #, XNA codebase to target Windows RT and the Windows Store, and could potentially spread to other mobile platforms if you buy Xamarin tools.
Therefore, there is no reason to move your C # stuff to C ++.
Unity3D, on the other hand, is a completely different game card and will not be an easy port. But you can target many more platforms (especially consoles, and now, Flash) and another script for most of the game in C #. But this is a completely different tool to study.
source share