Javaのクロスプラットフォームとは「Windowsで開発してSolarisで運用しなさい」というもの。
.NETは「Professionalで開発してServerで運用しなさい」というもの。
どっちもどっち。

現実的には.NETの方がやりやすくコストも低い。