25 Oct 2026

Double End of Support: .NET 8 and .NET 9 Expire on November 10

On November 10, 2026, support for .NET 8 and .NET 9 ends on the same day. What this means for your business applications and how to move safely to .NET 10 now.

dotnet-8-9-supportende-november-2026

On November 10, 2026, support ends for .NET 8 and .NET 9, and both versions go out of support on the same day. From then on, Microsoft will no longer ship security updates for them. Many customer portals, internal business applications, web APIs and background services at small and mid-sized companies run on exactly these versions. That leaves just over two weeks to take stock and plan the move to .NET 10.

What is changing

Two versions, one date. .NET 8 is a long-term support (LTS) release. It shipped in November 2023 and has been maintained for three years. .NET 9 is a standard-term support (STS) release that arrived a year later. Microsoft extended support for STS releases from 18 to 24 months, so .NET 9 now ends together with .NET 8. If you moved to .NET 9 early last year, you gain no extra time.

What happens after the deadline: Existing applications keep running. However, there will be no security fixes and no technical support. October's Patch Tuesday shows how much these updates matter: according to reports, Microsoft fixed numerous vulnerabilities in .NET 8, 9 and 10, including some that allow attackers to execute malicious code. November 10 is itself a Patch Tuesday, so there may be one final update if needed. After that, it is over.

What else is affected:

  • PowerShell 7.4 and 7.5 are built on .NET 8 and .NET 9 respectively and also reach end of support on November 10. The successor is PowerShell 7.6 (LTS, supported until November 2028).
  • Azure App Service: Microsoft is explicitly advising customers to move .NET 8 apps hosted there to .NET 10.
  • Visual Studio 2022 will mark the .NET 8 and .NET 9 components as out of support in a future update.

The classic .NET Framework 4.8 is not affected. It follows its own lifecycle, which is tied to Windows.

The target is .NET 10. It has been available since November 2025, is also an LTS release and will receive updates until November 2028. .NET 11 will launch at .NET Conf from November 10 to 12. As an STS release, however, it is less suitable than .NET 10 for long-lived business applications.

What this means for your company

An application without security updates does not become insecure overnight. It does become less secure with every newly discovered vulnerability. Applications reachable from the internet are the most critical: customer portals, online shops, partner interfaces or login pages. Microsoft does not offer paid extended support for .NET the way it does for Windows, so there is no official safety net.

Compliance is the other side. If you work under NIS2 or industry-specific rules, or your customers send you security questionnaires, you need to be able to explain why production software runs on a platform without vendor support. Cyber insurers are also asking more and more about patch levels.

The good news: in most cases, moving from .NET 8 to .NET 10 is not a rewrite. Often a changed target version, updated packages and thorough testing are enough. It takes more effort when old libraries are no longer maintained, or when modernization that has been postponed for a while has to be caught up.

Recommended next steps

  1. Take inventory: Which servers and containers run .NET applications? The command dotnet --list-runtimes lists the installed runtimes. In projects, the TargetFramework setting (e.g. net8.0) shows the version; in Dockerfiles, the base image does (e.g. aspnet:8.0).
  2. Prioritize by risk: Start with anything reachable from the internet or handling sensitive data, then move on to internal tools.
  3. Upgrade and test: Change TargetFramework to net10.0, update NuGet packages such as Entity Framework Core to version 10, review the breaking-change notes and run both automated and business acceptance tests.
  4. Update the runtime environment: Install the .NET 10 runtime or the ASP.NET Core Hosting Bundle on IIS servers, update container images and CI/CD pipelines, and switch the runtime version in Azure.
  5. Don't forget scripts: Move automations that use PowerShell 7.4 or 7.5 to 7.6 and test them.
  6. Vendor software: For business applications from third-party vendors, ask for a .NET 10 version and get the date confirmed in writing.
  7. If you can't make it by November 10: Install the last available update, restrict internet access as far as possible, tighten monitoring and firmly schedule the migration for the coming weeks.

How Sadeem helps

We build and run custom software, including with C# and .NET, and handle your move to .NET 10 end to end: from the inventory through code changes and automated tests to the rollout on your servers, in containers or in Azure. If you wish, we then take care of updates, backups and monitoring through our managed hosting in Germany and the EU, so the next end-of-support date does not catch you by surprise.

Not sure which of your applications are affected? In a free initial consultation, we will work out an overview together.

Sources

Updates.NETPowerShellEnd of Life