Programming Languages Compared
.NET: The Runtime Windows Backends and Modern C# Run On
.NET is Microsoft's managed runtime: the platform behind ASP.NET Core web services and desktop backends, rewritten cross-platform over the last decade so it now runs first-class on Linux with Kestrel, systemd integration, and container workflows. For ops teams, the practical questions are LTS cadence, hosting shape, and supply chain, and all three have moved far from the 'Windows-only' stereotype this platform used to carry.
Key points
- The modern platform is uniform: .NET 5 merged Framework and Core into one lineage, and even-numbered releases (6, 8, 10) carry LTS support while odd ones ship as 18-month previews; the migration tax comes from EOL'd runtimes found in production, not from the platform itself.
- Cross-platform is real, not marketing: ASP.NET Core hosts on Linux with Kestrel behind nginx or Apache, systemd unit integration is first-class, and a majority of new .NET services deploy to Linux containers; Windows Server hosting is now a deliberate choice, not a default.
- Deployment shape matters in ops: self-contained single-file publishes bundle the runtime (bigger artifacts, zero runtime install), while framework-dependent deploys rely on shared runtime versions; both are legitimate, but fleet hygiene requires knowing which one each service uses and what a host upgrade touches.
- The supply chain is NuGet: dependency inventory, vulnerability audits (dotnet list package --vulnerable), and lock-file-like discipline via central package management are the hygiene basics; the Log4j lesson applies equally here because the ecosystem is equally transitive.
- Performance story is strong: Kestrel is a top-tier web server implementation, and the runtime earns serious benchmark results; real-world perf work still lives in EF Core query analysis and allocation discipline, not in runtime memes.
- Where .NET stays the right answer after our framework comparisons: Windows-adjacent enterprises, C# talent on staff, and long-lived transactional services where static typing plus mature tooling pays; greenfield Linux microservices pick Go or Python more often on team-fit grounds than technical ones.
Field note
A client's 'Windows-only' constraint turned out to be one ASP.NET app from 2018; the runtime itself moved to Linux containers within a quarter and the Windows license line quietly shrank by two servers. The interesting part was not the migration, it was discovering the constraint had never been technical.
Frequently asked questions
Is .NET still Windows-only?
No, and it has not been for years: .NET runs on Linux and macOS, hosts on Kestrel behind reverse proxies, and ships in official Microsoft container images. Legacy .NET Framework (4.x) is the Windows-only part, and separating the two vocabulary-wise prevents most confusion.
Which versions are safe to run in 2026?
LTS releases only: 8 and 10. Anything else in production is a migration project waiting for its EOL date; treat .NET runtime EOL like PHP and OS EOL, with scheduled upgrades rather than emergencies.
Does .NET on Linux still need Windows servers anywhere?
Not for the runtime; decision grounds become licensing, existing IIS integrations, and staff skills. Identity-heavy estates often keep a Windows slice for AD and file services while the web tier runs Linux.
How do we audit .NET dependencies for CVEs?
dotnet list package --vulnerable plus regular NuGet dependency reviews, central package management for version pinning, and CI failing on new advisories; the mechanism is mature but worthless without a scheduled habit.
How Kinetikatech helps with programming languages compared
Honestly, most teams come to us after trying it themselves first: Languages for system work, scripting, and services, compared on what actually matters in production: safety guarantees, raw speed, who you can hire, and how painful the resulting services are to deploy and patch. Our Server Management and Website Maintenance service exists so you don't have to learn programming languages compared the hard way, we handle the setup, the watching, and the 3 a.m. surprises.