Well, if you're using XNA, you'll need to implement all the underlying code for the stuff you use yourself as well. Examples being use of XNA's Vector2 class, or Quaternions - you'd need to implement those yourself. An example that shows my point more clearly is implementation of the rendering pipeline, or your own version of content management. There's a lot more to it than finding equivalences. Also, if you plan to convert it to another language eventually anyway, would it not be more sensible to implement it in your own language in the first place? Also, you mention that no matter how good the engine you'll run into a limitation somewhere somehow with regards to E02... while this is perfectly true and valid, you're kind of trumping your point by suggesting the use of XNA rather than coding your own engine from the ground up because XNA and C# are heavily limited in terms of game development and engine control. When developing with XNA, You're essentially developing on top of a set of pre-established routines for stuff like rendering and content management, which limits your engine design considerably. C# kills most possibility of good memory management practices; again a fundamental part of game engine design - generally I'd say that XNA/C# is simply a bad idea unless you're developing for Xbox Live community games, and even then I argue to this day that they should've used a real language rather than a crippled one. I think XNA/C# is more designed for hobbyist kids to provide an easy platform for game development than it is for catering for serious development - in this regard I'd say it's not a huge amount better than using something like Game Maker. Again I'll reiterate that this is all with the exception of development for Xbox Live Arcade/Xbox Live Community Games. Also, developing in C#/XNA with any intention of porting to other platforms in future (especially if you're considering converting to another language to do so, after having made the game in C#/XNA) is... well, a waste of time :P ... just my 2 pence.