Comment Consider the APIs that come with the language ... (Score 1) 817
The main difference (IMO) comes from the APIs. Unless you happen to be one of those people who write command-line apps for their desktop computing fibonacci numbers, you will need to understand a billion APIs - XML, SOA, GUI, and god-only-knows what. And good-luck trying to master both
( putting on fireproof vest). C# today seems to be more popular for "desktop" and "GUI" kind of applications. Java OTOH seems to be more popular with "server" kind of applications. So your choice finally boils down to - what kind of applications do you see yourself developing.