>> Just a side question perhaps you can give a personal opinion on:
>> is .NET's true main competitor Java?
Not sure I am the right person to answer this.
C#/VB.NET compete with Java. So it is language against language.
The .NET Framework therefore should probably be a EJB competitor.
.NET (as in "the runtime environment") is probably more a Linux competitor.
But I am not sure. I guess everyone has a different viewpoint on things. .NET is just much larger than just an individual language or compiler...
Markus