September 30, 2026

Hire .NET developers: vetting, cost & interview guide

Hire .NET developers in 2026: what senior means after .NET 8 and 9 end support on 10 Nov, how to vet C# and ASP.NET Core skills, and interview questions.

Recruiting

Tech

Backend

When you hire .NET developers, the job ad you write decides who applies. ".NET" now covers a Windows-only framework you maintain, a cross-platform runtime you build on, and the migration between the two. On 10 November 2026, support ends for both .NET 8 and .NET 9, so the version in your job description is a hiring decision, not a footnote.

It sits in our series Hire developers by tech stack: rates, vetting and interview guides, and the version lifecycle comes first here because it decides which of three roles you're filling.

What does "senior .NET developer" mean in 2026?

A senior .NET developer is someone who can ship and operate a production service, not someone who lists the most years of C#. That means ASP.NET Core for the web layer, Entity Framework Core for data access, dependency injection used correctly, and enough Azure (or another cloud) to deploy what they build.

Two points of confusion come up in almost every scoping call. First, C# and .NET aren't separate hires. C# is the language and .NET is the platform it runs on, so a C# developer is a .NET developer. Second, ".NET" and ".NET Framework" are different products. Microsoft states plainly that .NET Framework is a Windows-only component, while modern .NET runs across operating systems, including Linux. A candidate with ten years on Framework 4.8 and WebForms can be excellent and still have never deployed a container.

Seniority, then, includes knowing which of the two worlds you're in and what breaks when you cross between them.

Which .NET versions are supported right now?

Microsoft's .NET support policy says a new major release ships every November, even-numbered releases are long-term support (LTS) with three years of free support and patches, and odd-numbered ones are standard-term support (STS) with two. As of 30 September 2026, the table looks like this.

VersionTypeReleasedSupport ends
.NET 10LTS11 November 202514 November 2028
.NET 9STS12 November 202410 November 2026
.NET 8LTS14 November 202310 November 2026
.NET 11Release candidate 1 on 8 September 2026Not yet generally available13 October 2026 (RC1 go-live, not for production)

.NET 11 is pre-release, so don't put it in a job description as a production target. .NET Framework 4.8 and 4.8.1 sit outside this table entirely. Microsoft's .NET Framework policy ties them to Windows: as long as .NET Framework 4.8.1 is installed on a supported version of Windows, it continues to be supported. There's no fixed end date to plan around, which is exactly why Framework estates get left alone for years.

What this means for the role: if your codebase is on .NET 8 or 9, a migration is on your calendar with a date attached, and the person you hire will probably own it. If you're starting fresh, our recommendation is .NET 10. It's the only LTS release in the table with support running into 2028.

Three .NET roles hiding in one job ad

Most ".NET developer" job ads describe one of three different jobs.

The Framework maintainer keeps a Windows application alive: WebForms, WCF services, Windows Services, .NET Framework 4.8. The work is careful and often undocumented. The best people here know the codebase's history and resist rewriting it for the sake of it. WinForms and WPF matter too, and Microsoft notes both are available in .NET but remain Windows-only technologies, so a desktop app doesn't become cross-platform just because it moves to modern .NET.

The modern .NET engineer builds new services on ASP.NET Core, usually containerised, usually deployed from a pipeline. Their strengths are async correctness, EF Core query behaviour, and operating what they ship.

The migration lead moves a Framework app to modern .NET. Microsoft's own guidance is blunt that after running the upgrade tool, in most cases the app will require more effort to complete the upgrade. Some technologies simply don't come across: Microsoft lists AppDomains beyond the default one, Remoting and Windows Workflow among them. The tooling is also shifting. The .NET Upgrade Assistant is officially deprecated in favour of the GitHub Copilot modernization agent, so a candidate who says "I'd run Upgrade Assistant" is describing a deprecated tool; Microsoft now points to the GitHub Copilot modernization agent.

Hire for the role you have. A Framework maintainer will be bored and slow on a greenfield service. A greenfield engineer will underestimate a large WCF estate. And a migration lead needs both skill sets, which makes them the hardest of the three to find.

What does hiring a .NET developer cost?

We couldn't find a dated primary source for .NET rates, and vendor-page figures are marketing claims, so we don't repeat them.

What we can say reliably is how price gets built, because that changes your bill more than the language does.

Seniority and role type move the rate first. A migration lead with Framework and modern .NET experience costs more than either specialist alone. Location moves it second, and contract structure third. Toptal's margin is undisclosed and blended into the quoted rate, so you can't see what the engineer earns. Lemon.io requires a 160-hour minimum commitment, roughly one full month upfront. HighCircl's margin is 20%, capped and disclosed on top of what the engineer earns, with no minimum hours. Those are general senior-engineer pricing structures, not .NET-specific figures.

When you compare quotes, ask each vendor three things: is the margin separate from the engineer's pay, is there a minimum commitment, and what happens if the fit is wrong. Those answers tell you more than a headline hourly number.

How to hire a .NET developer

1. Decide framework, modern .NET or migration

Pick one of the three roles above before you write anything else. If the honest answer is "both", split it into two hires or a phased engagement. One person rarely does 2015 WebForms maintenance and greenfield Kubernetes work equally well.

2. Write the version and stack into the job description

Say ".NET 10 on ASP.NET Core and EF Core" or ".NET Framework 4.8 with a planned move to .NET 10". If you're on .NET 8 or 9 today, state that support ends on 10 November 2026 and that the hire will own the upgrade. Candidates who want that work will self-select, and the ones who don't will save you an interview.

3. Run a code-review exercise

Give the candidate short snippets and ask for a written review, not a live fix. Three bugs work well for .NET:

An ASP.NET Core action that calls an async method and blocks on .Result. A strong candidate explains why blocking a request thread on async work causes thread pool starvation (and can deadlock in some contexts), and switches to await all the way up.

An EF Core query that loads a list of orders, then touches each order's customer inside a loop through lazy loading. That's the classic N+1 problem, and a good candidate proposes eager loading with Include or a projection.

A scoped service injected into a singleton. This is the captive dependency: the scoped service lives as long as the singleton, along with whatever state it holds. Candidates who've debugged this in production spot it quickly.

4. Test migration judgment

Even for modern .NET roles, ask how they'd bring a legacy project forward. Good candidates mention converting packages.config to PackageReference, finding Windows-only APIs that won't run on Linux, and identifying technology that doesn't exist in modern .NET, such as AppDomains, Remoting, Windows Workflow or System.EnterpriseServices, plus in-box WCF server hosting (CoreWCF is the community port). Ask what they'd do about each. Vague answers ("the tool handles it") ignore Microsoft's own note that the app usually needs more work after the upgrade tool runs.

5. Check the ops side

A .NET engineer who can't get their service from commit to production is only half the hire. Ask how they'd build a pipeline in Azure DevOps or GitHub Actions and how they'd containerise an ASP.NET Core app. If the role is mostly pipelines and cloud, you may need the person who runs your CI/CD and Azure pipelines as a separate hire.

.NET developer interview questions that reveal real seniority

1. What goes wrong when you mix IDisposable and async code?

Listen for IAsyncDisposable, forgotten await using, and disposing something still in use by a background task. A good answer includes a bug they've actually hit, not a definition.

2. Explain transient, scoped and singleton lifetimes, and what breaks when they're mixed

A good answer names the captive dependency without prompting and explains that a DbContext shouldn't be held by a singleton. Weak answers recite the three names and stop.

3. When do you use tracking and no-tracking queries in EF Core?

Read-only queries usually don't need change tracking, and skipping it cuts overhead. Updates need it. A senior engineer also brings up when tracking surprises you, such as stale entities held in a long-lived context.

4. What changed when you moved a project from .NET Framework to modern .NET?

There isn't one right answer, but there are tells. A real answer includes specific pain: package formats, configuration changes, an API that didn't exist anymore. "Not much, it mostly just worked" is a red flag on any app of real size.

5. Would you pick LTS or STS for a new project, and why?

For most business systems, LTS is the sensible default because support runs three years instead of two. Because .NET 9 is STS, its support ends on 10 November 2026, just two years after release. A good candidate ties the choice to how often the team can absorb an upgrade.

6. When would you not choose .NET?

A strong engineer has a real answer: a team with deep Node.js skills and no .NET experience, or an ML-heavy workload built around Python libraries. Someone who can't name a single case for another stack is selling, not advising.

When to choose .NET over Node.js or Java

Choose .NET when your team already knows C#, when you're tied to Microsoft infrastructure such as Azure and SQL Server, or when you're extending an existing .NET estate. Choose Node.js when one language across front end and back end matters more than anything else. Choose Java when your organisation already runs on the JVM.

None of these is a universal winner, and the honest deciding factor is usually the team you can hire and keep. Backend languages are tools, and what backend seniority means beyond the language is the harder question.

Staff augmentation vs full-time for a .NET hire

Migration work has an end date. Once a Framework estate is on modern .NET and stable, the specialist skills you needed for the move matter less. That pushes migration toward augmentation or a fixed-term engagement, with a full-time hire for the steady-state ownership afterward.

HighCircl works differently from marketplaces on the points buyers ask about most. It delivers a shortlist of 3-5 candidates in 72 hours, drawn from about 1 in 10 applicants who pass four engineer-led stages: background verification, a communication and product-thinking assessment, a take-home project, and a live architectural session. The margin is a capped 20%, with no minimum hours, and engineers work from seven European countries: Poland, Hungary, Slovakia, Serbia, Slovenia, Romania and Spain. Delivery from the EU member states is GDPR-native, and Serbia isn't an EU member. Its general senior-engineer range across its covered stacks is €45-105/hr ($50-115/hr), which isn't a .NET-specific rate.

FAQ

How much do .NET developers cost?

There's no sourced .NET-specific rate to quote, and vendor page figures are marketing claims. Cost depends on seniority, role type (a migration lead costs more than a maintainer), location and contract structure. Check whether the margin is disclosed and whether there's a minimum commitment before you compare hourly numbers.

Is .NET Framework still supported?

Yes, for now. .NET Framework 4.5.2 and later follows the lifecycle of the Windows version it's installed on, and .NET Framework 4.8.1 remains supported while it runs on a supported version of Windows. That's why many companies still run it. It's Windows-only, though, so it limits your hosting options.

Should I hire for C# or .NET?

Both are the same hire. C# is the language and .NET is the platform, so a .NET developer writes C#. What matters is the version and stack: ASP.NET Core and EF Core on modern .NET, or Framework 4.8 maintenance, or migration between them.

How long does it take to hire a .NET developer?

There's no reliable time-to-fill figure for .NET specifically. Vetted-shortlist models compress sourcing to days rather than weeks. The slower parts are usually interviews and your own decision on which of the three roles you need.

Is .NET 8 still safe to build on?

Support for .NET 8 ends on 10 November 2026, and .NET 9 ends on the same day. Anything you start now should target .NET 10, whose support runs to 14 November 2028. If you're already on .NET 8, plan the move to .NET 10 rather than treating it as an emergency.

Share this article

Author Image

HighCircl Editorial Team

The HighCircl editorial team writes about hiring software engineers, nearshore development, and engineering team building. Our articles draw on direct experience sourcing and placing senior developers across Poland, Hungary, Slovakia, Serbia, Slovenia, Romania, and Spain — and on candid conversations with the CTOs and engineering leads who hire them.

HighCircl is a nearshore engineering network that delivers matched candidate shortlists in 72 hours. Every piece of content we publish is informed by real engagement data: actual developer rates, real hiring timelines, and what separates engineering teams that scale cleanly from those that stall.

Take Me to the Experts

Access our network of industry-leading software engineers.

Start Now