Comparing a languauge to a framework is still totally wrong, but it still seems this point is being missed. Do you compare C++ to .NET? No you compare C++ to C#.NET.

Another thing that makes collaboration easier is the fact that ASP.NET is strongly typed – i.e. you cannot be as sloppy in your coding as you can with PHP.
Actually what makes colloboration easier is having developers how know who to develop.

The overall problem .NET has is it's not really appealing to anyone but existing MS developers and environments (those into Visual Basic, Visual C++).

Being cross platform with a price tag attached to most things you want to do with it, it fails to appeal to the small web developer.

On the enterprise level, corporations have already invested heavily in doing things the Java way and delivering web services is likely to happen more with J2EE and IBMs solutions.

And that's before we even ask about SOAP; the web services protocol Bills betting the company on. Despite being pushed by the big names, the jury is still out as to whether it will take off: Sun has it's alternatives, the REST approach raises questions about whether SOAP is fundamentally flawed, issues like security are outstanding and the bottom line; some people are calling SOAP COAP, because it's become so complex. Among other things, SOAP is about cross platform data exchange, in particular with legacy systems, but if no one apart from .NET developers are doing anything with it, it's a dead parrot.

And if SOAP flops, Bills gonna wish he hadn't bet the company on .NET