Here's why you should learn C#
-
C# was designed to be simple and easy to use. Since C# is a high-level language, it reads somewhat closer to English. In addition, C# abstracts away (i.e. handles for you) most of the complex details of the machine (computer) so you can focus on programming instead of worrying about the little details many consider both tedious and difficult.
If you're planning to get into C# game development, then Unity is also designed to be easy to get started with as well.
Easy to Maintain
C# is a statically-typed language, which means your code will be checked for errors before it gets built into an app. Errors will be easier to track down, and since statically-typed languages are also more strict with how you code something, the codebase, in general, will be more consistent and thus easier to maintain as it grows in size and complexity.
Fast
As a statically typed language, C# is faster than dynamically typed languages because things are more clearly defined. Thus, when the app is running, your machine's resources will not be wasted on checking the definition of something in your code.
Community
C# has a large community backing it up as C# was created in 2002. Since then the community has been building up.
Career Opportunities
16% of the top 100 million websites are powered by the ASP.NET framework, of which many might be using C#, so there are some opportunities in enterprise-level backend development. However, tech giants mainly use Java for its better portability and tools. Nonetheless, if you know already C#, it shouldn't be too hard to pick up Java if push comes to shove.
With the rise of indie game development, C# developers are likely to have a better opportunity, since Unity has pretty much become the de facto game engine for indie game development.