When comparing Java vs C#, the Slant community recommends C# for most people. In the question“What are the best general-purpose programming languages?” C# is ranked 4th while Java is ranked 5th. The most important reason people chose C# is:
The Visual Studio IDE offers one of the best development environments. The [Community Edition](https://visualstudio.microsoft.com/vs/community/) can be used for free.
Ranked in these QuestionsQuestion Ranking
Pro Mature ecosystem
The language and all its tools have enough time to age and they've aged well.
It is easier to catch errors sooner.
Pro Visual Studio
The Visual Studio IDE offers one of the best development environments. The Community Edition can be used for free.
Can be designed visually with the Visual Studio designer for traditional Windows forms, WPF, or Web forms.
.NET offers rich functionality.
Pro 3rd Party support
Lot's of tools and libraries available.
In more detail: Oracle has acquired Java from Sun and continues to surround it with controversy ever since (legendary lawsuit with google, money extortion from the enterprise users etc.).
Con Memory hungry
Running the virtual machine, application server and application itself consumes significant amount of resources.
Con Unnecessarily obtuse and verbose
If you like typing 40 lines of code to open a file, Java is the language for you. If, on the other hand, you’d actually like to get something done, look elsewhere.
Con Learning curve
For a beginner the .NET framework can be daunting, the rich functionality means that things often can be done in several ways.