Soweit ich weiß hat MinGW eine bessere Implementierung der GCC.Zitat von Crash-Override
Zum Thema Dotnet (.NET): Dotnet ist ein komisches Ding: Es bietet dir einige der Vorteile von Java (wie z.B. den Garbage Collector und den Umstand, daß du "portablen" Bytecode erzeugt), hat allerdings auch einige der Nachteile von Java (wie z.B. die vergleichsweise schlechte Geschwindigkeit dank Garbage Collector und Bytecode), erzeugt aber im Gegensatz zu Java keine portablen Programme, weil es das .NET Framework offiziell nur auf Windows gibt.
Mit Dotnet hast du im Wesentlichen ein Java, das du wahlweise wie Basic oder C++ programmieren kannst, das dafür aber nur unter Windows lauffähig ist. Wenn du direkt in C++ programmierst sind deine Programme portabler (weil man nicht-Dotnet-Programme teilweise auch unter Linux zum Laufen kriegt) und schneller. Wenn du in Java programmierst sind deine Programme nicht viel langsamer als mit Dotnet und laufen überall.
Longhorn wird vielleicht für Dotnet optimiert sein, so daß der Geschwindigkeitsverlust da geringer ist; trotzdem kommt mir Dotnet wie ein Java-Verschnitt vor, der das eine entscheidende Feature von Java nicht hat: Die Möglichkeit, ein Programm ohne jede Veränderung auf einem Dutzend Plattformen verwenden zu können.