Wow, .NET против Java, не могу дождаться, чтобы увидеть, как это получится; -)
.NET может иметь преимущество при развертывании WPF и однократном нажатии. WPF находится во второй версии и показывает себя достаточно мощным и простым в использовании. Это обеспечивает отличное разделение между логикой и представлением (в XAML). Лично я бы предпочел приложение Windows для веб-развертывания, потому что модель программирования гораздо более мощная и универсальная (и лучше подходит для сложных форм).
Я не буду пытаться представлять точку зрения Java здесь, но разработка форм Windows на Java не имеет большой репутации. Возможно, это необоснованно, мне было бы интересно услышать, что говорят программисты на Java. (ОБНОВЛЕНИЕ - Swing - это технология, о которой я здесь говорю)
В некоторой степени это неверный выбор, потому что другие перечисленные вами технологии (Spring, Hibernate) также доступны в стеке .NET (Spring.Net и NHibernate) и являются достаточно зрелыми. Самые популярные технологии Java с открытым исходным кодом были портированы в стек .NET.