C# ist viel schneller als C++ - in C# kann ich einen XML-Parser und Datenprozessor in einem Zehntel der Zeit schreiben, die ich für C++ benötige.
Oh, Sie meinen die Ausführungsgeschwindigkeit?
Selbst dann ist C# wahrscheinlich immer noch schneller als C++, wenn man die Zeit von der ersten geschriebenen Codezeile bis zum Ende der ersten Ausführung des Codes betrachtet.
Dies ist ein sehr interessanter Artikel über die Konvertierung eines C++-Programms in C# und den Aufwand, der erforderlich ist, um das C++-Programm schneller zu machen als das C#-Programm.
Wenn man also die Entwicklungsgeschwindigkeit berücksichtigt, ist fast alles besser als C++.
OK, um auf die reine Laufzeitanforderung des Auftraggebers einzugehen: Es liegt nicht an der Sprache, sondern an der Umsetzung der Sprache die die Laufzeitleistung bestimmt. Ich könnte einen C++-Compiler schreiben, der den langsamsten Code erzeugt, den man sich vorstellen kann, aber es ist immer noch C++. Theoretisch ist es auch möglich, einen Compiler für Java zu schreiben, der auf IA32-Befehle und nicht auf die Bytecodes der Java-VM abzielt, was einen Geschwindigkeitsschub zur Laufzeit bedeutet.
Die Leistung Ihres Codes hängt von der Übereinstimmung zwischen den Stärken der Sprache und den Anforderungen des Codes ab. Zum Beispiel wird ein Programm, das viele Speicherzuweisungen und -freigaben vornimmt, in einem naiven C++-Programm schlecht abschneiden (d. h. den Standard-Speicherzuweiser verwenden), da die C++-Speicherzuweisungsstrategie zu allgemein ist, während der GC-basierte Zuweiser von C# besser abschneiden kann (wie der obige Link zeigt). Die Manipulation von Zeichenketten ist in C++ langsam, in Sprachen wie PHP, Perl usw. jedoch schnell.