@puf: jo, sice to taky běží na platformě .NET, rozuměj překládá do stejnýho bajtkódu, ale v bajtkódu neprogramuješ. Prostě spousta lidí investovalo moře času být dobří ve Visual Basicu, s tím, že to bude vlajková loď MS a nakonec přišel C# a VB už nikoho nezajímá.
Ty zmiňuješ, že to je v .NET všechno víc propojené. S tím máš trochu pravdu, protože všechno je přímo od Microsoftu - Entity Framework, ASP.NET MVC, WPF, ... a samozřejmě všechno pěkně integrované ve Visual Studiu, takže si prostě stáhneš MSVS, otevřeš msdn a jedeš.
Ve světě Javy máš ale daleko větší možnosti, víc různých frameworků. Jestli to je naškodu nebo ne je otázka. V Java světě máš specifikace co se má jak chovat, jaké má být API apod., které vytváří nějaká skupina lidí (google://java community process) a implementaci pak může poskytnout kdo chce. Typicky referenční implementace je přímo od Oracle, co stojí za Javou.
Konkrétně pro nějaké ty technologie .NET vs JAVA
Entity framework vs Hibernate (odpovídá specifikaci Java Persistance API)
WPF vs JavaFX
WinForms vs Swing nebo třeba SWT
ASP.NET MVC vs Servlety, Spring MVC, Java Server Faces a tuna dalších
Visual Studio vs NetBeans, Intelli Idea, Eclipse
Problém je, že tím jak je to založené na tomto principu, tak prostě nejde jen tak googlit nějako "How to develop everything with Java", ale musíš se tím trochu prokousat a pak ti to bude dávat smysl a budeš rozumět té filosofii.