Wie aber sieht es mit Cross-Platform aus, wie es zu Beginn der .NET-Ära angekündigt wurde? Ein Java-Runtime-Environment gibt es ja für nahezu jede Plattform.
Naja es läuft auf allen "Windows" Systemen mehr oder weniger gut.
Aber von Hause aus ist nur die Basis(also der Teil der ISO Standardisiert ist) Plattform unabhängig. Der Rest ist es nur bedingt( als Windows.Forms läuft großteils, WPF läuft gar nicht). Moonlight ist nur brauchbar wenn du auf DRM verzichtest, denn das darf auf einem Linux Desktop nicht verwendet werden(sagen die Lizenzbedingungen von MS für Play 4 Sure)
Also ein Java ist es nicht. Man kann nicht eben mal eine Anwendung mit
GUI schreiben und sie läuft auf allen Systemen ohne Probleme. Die meisten .NET Anwendungen die ich bisher gesehen hab sind Plattform gebunden. Also sie laufen entweder auf Win oder unter Linux oder auf dem Mac. Einige wenige laufen mit erheblichen Aufwand und Win und OSX oder unter Lin und OSX. Anwendungen die gut unter allen Plattformen laufen sind selten.
Windows.Forms wird nicht auf jeder Plattform mitgeliefert, daher müssen die passenden Pakete extra ausgeliefert werden.