To be fair .NET can't replace the Java ecosystem now and will not replace the Java ecosystem in the following years. It's just not the same thing. Yes C# is way better than Java, but there is so much more going on for Java. For starters Java is truly multi platform and the ecosystem is way richer. So no "people won't even touch .NET because it's not hip", people won't touch .NET because even though it's really good it's not that good, at least not when you take into consideration the whole ecosystem.