You Should Learn C# And Here's Why

Photo by Andrew Neel on Unsplash

You Should Learn C# And Here's Why

I wanted to get into game development at the age of 16 which led to me learning C# and I fell in love with its syntax ever since. A year after working with javascript and other various languages I found myself using C# once again for backend development, which explained why it was voted the most loved backend framework on StackOverflow.

Why should you get into C# too? Let me tell you all about it.

What The Hell Is C#?

C# (pronounced as C Sharp) is an object-oriented programming language that is built on the .NET platform, which includes ASP.NET for web development, Xamarin for mobile development, and other important Microsoft development languages and frameworks which are open source, and that made them easily run on every OS thanks to the open-source community.

C# is known for simple and clean syntax, as well as its security and cross-platform capabilities. The language is also popular in the development community, currently ranking 5th place in the TIOBE programming community index. It is also constantly updated with the latest version being C# 10.0 which was released in 2021.

Is It Easy To Learn?

Coming from a non-technical background (which is what you'd expect from a 16-year-old kid I guess) learning C# was not that hard, it had a very clean and easy-to-understand syntax and most importantly there were a lot of free high-quality resources online. Microsoft Learn is a good way to start, it's the free course platform of Microsoft, it has a lot of free video courses on C# and .NET.

Aside from that, Microsoft Docs is the best documentation I've seen so far which is a game-changer for developers when picking technologies to work with. If you need anything extra, I'd recommend Mosh Hamedani's C# series on Udemy which starts from scratch, teaching you what a loop is, and slowly reaching advanced topics.

Another big advantage of learning C# is that once you're comfortable with it, the transition to other object-oriented programming languages will be so smooth. Although JavaScript and Python are popular, the syntax is very different from most other languages. C# is more similar to other object-oriented languages, so adding a new language to your stack, such as another C related language, PHP, Java, or Kotlin, will be easier. C# has a simple enough syntax that it is easy to learn, but it has similar patterns and logic as Java and C, which you will most likely need if you want to work for larger corporations.

Starting with C# has also benefitted me when learning Angular, which is a JavaScript framework for developing rather large and complex front-end apps, even tho C# has a much different syntax than JavaScript, it shared with angular some advanced concepts such as dependency injection which is hard to get started with on a non-object-oriented language.

What Can I Create With C#?

The short answer is everything, C# can be used to program embedded systems and Arduino cards, create UWP Apps (Universal Windows Platform) which includes a set of IoT devices, mobiles, and desktops. It can also be used to create web apps from front-end to backend using Blazor and ASP.NET, as well as mobile apps cross-platform mobile apps using Xamarin, and cross-platform means that the same C# code will run on both IOS and Android. And finally, you can even use C# for machine learning using ML.NET.

Is There A Community Around C#?

In addition to the thousands of subreddits and Facebook groups that are based around C#, there is the amazing Microsoft community. It’s not just Microsoft Learn and Microsoft Docs because Microsoft's presence in the tech field is so strong, aside from the free events and workshops that the company hosts on its youtube channel, it also hosts global events 3-4 times a year. In case you’re curious, about the current challenge that’s going on in the Spring Skill Challenge.

Various YouTubers constantly release content about C# and my favourites are: Nick Chapsas, Tim Corey, Wes Doyle and for long tutorials Kudvenkat.

Conclusion

C#, in my opinion, could be a great career starter for anybody that wants to learn an object-oriented programming language. It’s very accessible, there’s a lot of community support, and there are plenty of things you can create with it without ever feeling the need to switch to another language. Even if you decide to transition to another programming language you will already have a solid foundation to work from.