C#
Share:
The C# questions were only shown to the developers who chose C# as one of their three primary programming languages.
50%
–
C# 10 (file-scoped namespaces, global usings, record structs, extended property patterns)
32%
30%
C# 9 (records, target-typed new, top-level statements)
33%
50%
C# 8 (static local functions, nullable reference types, default interface methods)
24%
39%
C# 7 (pattern matching, local functions, ref locals and returns, out variables)
16%
27%
C# 6 (? and nameof operators, static imports, exception filters, Roslyn)
5%
27%
C# 5 (async / await, caller info attributes)
2%
5%
An earlier version
10%
12%
I'm not sure
Given that moving from the .NET Framework to .NET usually isn’t as simple as changing the target, it’s interesting that most developers are at least on the .NET (Core) train. At the same time, it’s surprising that a significant percentage of developers still maintain projects targeting .NET Framework 4.6 and earlier. I’m curious what’s keeping these projects from moving to 4.8.
Dennis Dietrich
Senior Software Engineer, Azure Storage, Microsoft
C#
HTML/CSS
JavaScript
TypeScript
VB.NET
F#
Other
49%
62%
.NET Framework
47%
–
.NET 6
43%
66%
.NET Core
24%
33%
.NET 5
10%
12%
Mono
5%
–
I'm not sure
C# developers use .NET Framework and .NET Core significantly less now than they did last year (down 13 and 23 percentage points, respectively).
56%
55%
ASP.NET Core
41%
42%
Entity Framework
25%
20%
Azure
24%
28%
Windows Forms
22%
19%
Unity
54%
62%
65%
Visual Studio
33%
27%
20%
JetBrains Rider
10%
9%
11%
Visual Studio Code
2%
2%
2%
Visual Studio for Mac
1%
1%
0%
Other
Over the last 3 years, the usage of JetBrains Rider has increased from 20% to 33% among C# developers.
Windows
macOS
Linux
39%
37%
xUnit
38%
37%
NUnit
14%
19%
MSTest/Visual Studio Unit Testing Framework
9%
8%
MSTest V2
As a former SDET, I find the percentage of C# developers who don’t write any unit tests disappointing. I had hoped that by now there’d be a consensus about the benefits of unit testing in general. It’d be interesting to find out why this is. Do the developers not believe in the benefits? Is it a matter of a lack of training or engineering culture? Is management pushing back on the short-term investments that unit testing requires?
Dennis Dietrich
Senior Software Engineer, Azure Storage, Microsoft
Looking back at my 20 years in the field and comparing my personal experience with the numbers here, I have to come to the conclusion that performance analysis and improvement is often a blind spot these days, though it really shouldn’t be. In many ways we’ve come full circle. Whereas in the old days the issues were limited memory and CPU resources, today we routinely write code to run on mobile devices where battery life is an issue, as well as cloud solutions that need to scale out where inefficient use of computing resources quickly means spending thousands of dollars more each month than necessary.
Dennis Dietrich
Senior Software Engineer, Azure Storage, Microsoft
74%
77%
From time to time when issues occur
19%
15%
Regularly – each day / week / sprint to predict issues
6%
8%
Constantly – it is an ongoing background process
1%
0%
Other
Quite many developers understand that profilers are tools for preventing performance issues rather than relieving their symptoms. The proportion of such developers has increased this year, but we can't say there is a sustainable trend yet.

I think regular profiling comes together with the idea of compound interest. As you know, like retirement, you put a small amount of money over time consistently, which eventually leads up to the point where you have something significant. The same thing with profiling: even a tiny segment of time to look at performance translates into big improvements across the board, if you do it consistently and persistently over time. So I don’t aim for huge, massive improvements at once. They're excellent when we get on, iteration after iteration.
Dylan Moonfire
Senior Software Developer, @dmoonfire
Me and some other developers
Only me
Every developer in our project
Nobody in our project
Other
39%
38%
Websites
37%
35%
Utilities (small apps for small tasks)
28%
20%
System Software
25%
18%
Database / Data Storage
JetBrains Rider is preferred when it comes to game development (+18 percentage points over Visual Studio), entertainment (+4 percentage points) and augmented / virtual reality (+4 percentage points).
Thank you for your time!
We hope you found our report useful. Share this report with your friends and colleagues.
If you have any questions or suggestions, please contact us at surveys@jetbrains.com.