A few years back when SFC 4 was being discussed the posts were adamant on c++, with no reason other than faster, and at that time it was. But improvements in managed languages, C# in particular and the NET framework have reduced this difference significantly. This is the theory. To validate I ran my own benchmarks, I build an identical game structure in C++ and C#, which included 3D rendering, the background also 3D and audio.
As for missing the basic tenant, I think one is being missed, the right tool for the job. Given what I imagine in a 3D game, it is possible to have as many as 60 3D models on the screen. (Main ships, fighters, torpedoes, planets, asteroids etc) the tool chosen needs to be able to move (physics), detect collisions, and render the scene. So the choice of a language would also dictate what libraries are available to handle this kind of performance requirement.
I would also add, that if there was some desire to ever port this to any console game, C++ may be required along with the license and sdk neither of which are free or cheap.
But with Mono, and it keeps getting better, there is the possibility to deploy to other platforms like UNIX that can run MONO, provided we use C#.
Of course all of this is mute if I do not have the background to accomplish or lead the effort.
I am currently an IT Project Manager, but I achieved this goal working my way up as a developer. My background includes developing programs in the scientific community and business. I maintain fluency in C++ and C#, although I have developed code in many other languages including assembler, Java, FORTRAN and Ada.
I am currently communicating with Frey, and we are working on finalizing a design to be used in the creation of AFC 4. A new effort. Depending on the design I have two different game structures I have been working on over the last year. One in C# and one in C++ (as mentioned previously). This has not started before as I was assisting Strat with the EAW conversion that I hope to see released very shortly as we finished the coding.
Which leads to the bottom line of this post. What do the customers want, customers being those that will play the game. And the options are simple:
C++ for slightly faster performance.
C# for significantly less development time.
I have posted this poll on a few different sties, without the specifics as to why, and it is interesting.
83% prefer the faster development
32% of those responding have some background in development.