Should I upgrade to .NET 9 to .NET 10 Migration Before November 10, 2026 STS Deadline now?

Plan the upgrade path for services on .NET 9 before its standard-term support ends on November 10, 2026.

Upgrade directly to .NET 10 LTS unless a brief stabilization window is unavoidable; only stay on patched .NET 9 if you can complete .NET 10 cutover before November 10, 2026.

Blockers

Who this is for

Candidates

Upgrade services directly to .NET 10 LTS

Microsoft's support policy lists .NET 10 as the active LTS release through November 14, 2028, while .NET 9 support ends on November 10, 2026. Moving directly to .NET 10 is the only supported option here that extends runway beyond 2026, and it should be treated as a normal major-version migration with retesting for breaking changes.

When to choose

Use this when you need continued support past November 2026 and can schedule a normal major-version validation cycle now. It is the decisive choice if you want to avoid doing two migrations inside the same support window.

Tradeoffs

Longest support runway and avoids a dead-end detour, but it requires validating .NET 10 major-version compatibility and any package or platform dependencies tied to .NET 9.

Cautions

Apps targeting .NET 9 do not automatically roll forward to .NET 10; a retarget, rebuild, and test cycle is required. Microsoft also states that supported systems must stay current on monthly servicing updates, so the migration plan should include patch compliance during the rollout.

Stay on patched .NET 9 briefly while certifying .NET 10, then cut over before November 10, 2026

This is a short-term stabilization option: stay current on .NET 9 servicing updates while finishing explicit .NET 10 migration work, then cut over before support ends. It minimizes immediate disruption, but it only buys a few months and does not change the final requirement to move off .NET 9.

When to choose

Use this when you need a short stabilization window for production services but can commit to finishing .NET 10 validation and deployment before the November 10, 2026 deadline. It fits low-ops teams that need to spread migration work across release trains without changing the final target.

Tradeoffs

Lowest immediate disruption, but it preserves upgrade risk instead of removing it and leaves less buffer for dependency issues, test failures, or platform lag.

Cautions

Do not treat .NET 8 as a fallback extension path: Microsoft's support policy lists .NET 8 LTS ending on the same date, November 10, 2026. For runtime planning, use the .NET product support policy and releases-and-support pages as the governing sources for .NET support dates; those pages list .NET 9 support through November 10, 2026.

Facts updated: 2026-04-03
Published: 2026-04-03

Try with your AI agent

$ npm install -g pocketlantern
$ pocketlantern init
# Restart Claude Code, Cursor, or your MCP client, then ask:
# "Should I upgrade to .NET 9 to .NET 10 Migration Before November 10, 2026 STS Deadline now?"
Missing something? Request coverage