In Andy's rebuttal:

Momentum. C# already has Regular expressions, it took Java a lot longer into its maturity to get there. The sheer momentum of the development of C# is greater than the early years of Java. Its not what M$ had hoped for, and expectations are rather high... But what are we comparing it to? Java 1.0 is the appropriate comparison IMHO. I wouldn't use it in a clients big production system..but I didn't back then with Java either.

I think comparing actual C# with Java 1.0 is wrong. It's like comparing Internet Explorer 6 with Netscape 4. You have a product which builds things, year after year (community, momentum, yada, yada). When the critical mass is reached, another company comes, and with some millions of US$, advertises "forget that, we're better". Whether the claim is true or not has little importance, the point is that history of both products must be taken in account. Just imagine that today MS launches with a big advertising campaign a news aggregator. The critical mass of feeds is reached, several client are available to be reaped off. And now somebody comes and says "The MS News Aggregator client has more momentum than Userland Radio (version from 07/2000)". You get my point.

ECMA standardization. C# and the basic CLR and CLI are standards.

ECMA standardization is good bu doesn't bring that many things. Netscape JavaScript and MicroSoft JScript have been ECMA-262 compliants for "ages", the real blocking point in cross-browser scripting was the definition of objects like 'document' and so on, which are not part of the standard. We see the same today with almost all .Net client applications which are not cross-platform, even with Mono's adherence with those standards.

Seperation of the VM/JIT/etc from the language.

The VM/JIT is bounded to the CLI. How much time before a straight CLI -> C# decompiler (whatever the original language)?

Mono. Mono is independant and already far better quality and has more momentum than Kaffe or any of the rest ever had (I never was happy with blackdown and now that its largely merged with Sun's there seems to be little real point these days).

I've to agree we that one. Ximian has jumped on MicroSoft's bandwagon faster than the light, and put the cash on the table. Meanwhile, the need for a competitive open source Java VM is less proeminent than for .net.