Java and Microsoft .NET are two frequently used Development environment to build Web Applications.Many Developers treat their development platform as religion and its really a difficult to judge who will be the winner.
Both Java and .NET adopts a different approach. Java’s tagline has been “Write Once run anywhere”. and if Microsoft had one it could have been something like “Multi-Language – Single platform”.
Java is infact more than 10+ years old but Dotnet is say 6-7 yrs old.When Java was around for quite some time it is somewhat difficult to work with but Dotnet is still younger and easier to work with.There are other few factors to decide on the platforms : Cost , performance , Lines of Code. etc.
Java developers use IDE like Eclipse, Netbeans etc. whereas Dotnet Developers use Visual Studio and Visual studio 2008 being the latest one and Visual Studio 2010 in the Beta2 stage. Dotnet for sure will enable the developers to achieve the same task to be done with its peers with less Code and time than others.
ComputerJobs.com moved from Cold Fusion to ASP.NET and reports gains in performance (4x), productivity, and server efficiency(Source : http://forums.asp.net/t/75749.aspx) . There are even Many More such recent implementations wherein .NET has provided much better performance the earlier one.
Dotnet is gaining popularity due to its faster development in compare to Java because Microsoft provides a great IDE (Visual Studio) to do that. VS play a big role to make dotnet hot but Yet Java is rich and good than its peers in various ways.
As far as developers are concerned , it doesn’t matter whether its java , .NET or something else whats more important is the developers interest in their language, their expertise level etc which must be their priority as opportunities are huge in both of these technologies
Thus, it is very difficult to argue which platform is best unless the enterprises understand their needs.