Microsoft technologies are not very popular by programmers with revolutionary spirit. Linux and free software are preferred in the free world. It's not the products of marketing firms like Microsoft.
that's why the question
isn't java more popular than C# in enterprise?
Java more popular than C#, imo creator of nbitcoin is C# supporter so he create lib for bitcoin in C#. Just like you said, java is popular than C# if you can code in java why you not create it?
Is there existed Java bitcoin core? AFAIK, NXT is written in Java, but NXT is altcoin, not bitcoin. But NBitcoin is rewriten bitcoin code in C#, it helps C# programmer develop apps, while Java can't unless you build something based on NXT.