One of the biggest questions being thrown around these days: “is C# dying?”. And well, telling if a certain language is dying is not always easy. Not all programming languages can survive forever — even the once-most-popular languages crumble away at some point in time. It’s inevitable as the new generations of developers embrace other languages and frameworks they find easier to work with.
But let’s rewind a bit first.
What’s C# and why is it so simple and easy to use?
As Microsoft MVP Andrea points out, “C# was inspired by languages like C, C++, and Java but the designers took the best parts of them and innovated further by introducing new concepts like value types, properties, and events”.
One of the things that makes working with C# so easy is the fact that you never have memory management issues, as it comes with a garbage collector that handles the memory on your behalf.
The C# language is also easy to learn because by learning a small subset of the language you can immediately start to write useful code. More advanced features can be learned as you become more proficient, but you are not forced to learn them to get up and running. — Andrea, Microsoft MVP
And alas, is it dying or not?
As you may know, last year Microsoft launched a new version of C# (9.0) that shook things up. This new version is open source, it’s cross platform and now the tooling is free. Because of .NET Core, there has been a significant reduction in web hosting costs since it can now be hosted on a Linux environment.
Well, this kind of opened a sea of opportunities, especially for web applications where C# remains one of the go-to languages. It allows you to build a fast, secure and very scalable application and it’s why there’s such a big demand from the market for the companies to hire .Net developers.
More and more companies will adopt it since Microsoft is constantly pushing this technology further and further into the Enterprise. So, honestly, everyone should be learning C# and .Net.
But another big pro for the C# is the fact that the gaming industry was one of the sectors with the biggest growth during the pandemic and, as you may know, the language is being used in Unity game engine software consistently by developers and companies. Unity is by far the most popular game engine (~50% market share, quick maths telling as that it’s the same as all other game engines combined) and the primary language you use to program Unity games is C#.
C# falls in the top 5 popular tags in Stack Overflow with over 200 questions asked every day.
So, bottom line: as long as Microsoft still exists and they don’t make another language to replace C#, it will remain huge. The biggest downside before was that if you programmed in C# it meant you were stuck in the Windows world (a world that developers usually don’t like that much). Nowadays this is no longer an issue since .Net Core is cross-platform and can be used outside of Windows, plus it helps to have a cool rich editor such as Visual Studio (VSCode) which integrates it perfectly.
As the time passes it won’t be strange to see a Gaming Dev on Ubuntu running C#/.NetCore on VSCode with MonoGame and I think it’s beautiful.
B2B Marketing Specialist (& Tech Advisor) @ Landing.Jobs