This refers to C# on .NET Core / 5+, not the 4.8 Framework version.
C# can be used for almost everything, from mobile development to server side programs. Given that it is used to run many Microsoft
services, they make sure each version is faster and more memory efficient than the one before, there are many blog posts
detailing the improvements made and how it has reduced Microsoft's requirements and saved them money.
At the other end of the spectrum, I have ported some of my old C# programs to the latest version and have indeed noticed the programs have been quicker and used less memory. The real problem I find is the short support length. At the time, I converted my programs to .NET 3.1 and they worked great and made use of the newer features. Now the 3.1 runtime is not available, the programs will not run unless I recompile them for a newer version of .NET (10?). New versions of .NET also drop support for older operating systems too.
If the above can be ignored, C# has a lot going for it as highlighted below. There is the issue that most users will not have the latest .NET Runtime installed but Microsoft are clear on what needs to be installed. There is also the option to build your exe with the required .NET components included in it which may be useful in some situations though it does mean a much bigger exe.
✔️ Getting faster and more memory efficient with each version!
✔️ Supports a wide range of processors and operating systems (to a degree).
✔️ Great documentation usually with clear examples.
✔️ C# and its Standard Library offer support for many tasks meaning you can avoid reinventing the wheel.
➖ On platforms that are not Windows, you cannot make GUI based applications.
❌ Compiling is not quick which does slow the build-test cycle
❌ Short support length, even using LTS versions means recompiling every 3 years to run on a supported runtime.
❌ Most users will not have the necessary .NET Runtime installed.
Click the link for more about C# and .NET.
Memory Safe Languages:
C# |
D |
Go |
Java |
Rust
Updated (20/06/2026)