Fact-checked by Grok 2 weeks ago

.NET

.NET is a free, cross-platform, open-source developer platform developed by Microsoft for building high-performance applications across web, mobile, desktop, games, IoT, and cloud-native environments. It includes a runtime environment, extensive class libraries, and development tools that support multiple programming languages, including C#, F#, and Visual Basic. The platform emphasizes security, reliability, and performance, enabling developers to create scalable solutions that run on Windows, Linux, macOS, Android, iOS, and other operating systems. The origins of .NET trace back to the .NET Framework, a Windows-specific first released in 2002 to provide a consistent model for building and running applications and XML web services. In response to demands for broader compatibility, Microsoft introduced .NET Core in June 2016 as an open-source, modular, cross-platform successor designed for modern cloud and containerized workloads. This evolution culminated in the unified .NET platform starting with .NET 5 in November 2020, which merged the best features of .NET Framework and .NET Core into a single, annually released ecosystem supported by long-term service (LTS) versions for stability. As of November 2025, .NET 10 represents the latest major version, released on November 11, 2025, with ongoing monthly security updates and a vibrant open-source community contributing through the .NET Foundation. Key components of .NET include the (CLR), which manages code execution and memory; the Base Class Library (BCL), offering reusable types for common tasks like networking, file I/O, and ; and tools such as the .NET CLI for command-line development, for integrated environments, and for package management with over 300,000 available libraries. The platform supports modern paradigms like , via , and with , while prioritizing developer productivity through features like hot reload and . With no licensing costs and broad industry adoption, .NET powers applications for enterprises and startups alike, backed by 's commitment to patches and optimizations.

Overview

Definition and Core Principles

.NET is a free, cross-platform, open-source developer platform designed for building and running a wide variety of applications. It provides a unified , extensive class libraries, and tools that support multiple programming languages, with C# serving as the primary language. At its core, .NET operates on principles of managed code execution, which includes just-in-time () compilation to optimize performance by converting intermediate language code to native at . It employs automatic collection for , which automatically allocates and deallocates memory to prevent leaks and reduce developer overhead. Additionally, .NET enforces through its and strict compiler checks, ensuring that code accesses only authorized memory locations and maintains data integrity across languages. The platform distinguishes between the original .NET Framework, which is Windows-specific and focuses on building applications for that operating system, and the modern unified .NET, which is cross-platform and supports Windows, , macOS, , and . This unification allows developers to target multiple platforms from a single codebase without significant modifications. .NET is widely used for developing web applications with , mobile apps via frameworks like .NET MAUI, desktop software for Windows and cross-platform environments, cloud-native services on platforms like , and gaming applications through engines such as and . These use cases leverage .NET's performance, security, and ecosystem of libraries to create scalable, reliable software.

Evolution and Ecosystem Role

.NET has evolved significantly since its inception, transitioning from a tightly coupled to Windows to an open-source, cross-platform platform that fosters community-driven development. In 2014, established the to oversee and promote open-source projects within the , marking a pivotal shift that encouraged contributions from developers worldwide and broadened .NET's accessibility beyond 's traditional boundaries. This move culminated in the open-sourcing of .NET Core later that year, enabling support for and macOS and integrating .NET into diverse computing environments. Within Microsoft's broader ecosystem, .NET serves as a foundational pillar for developer productivity, seamlessly integrating with tools like for code editing and debugging, for cloud deployment and scaling, and the Power Platform for extending applications with low-code capabilities. For instance, provides native support for connecting .NET applications to services, facilitating the development of scalable web apps and . Similarly, Power Platform Tools for enable .NET developers to build and deploy custom plugins and workflows, bridging high-code and low-code paradigms to accelerate innovation. This interconnectedness positions .NET as a versatile backbone for enterprise solutions, from on-premises systems to hybrid cloud architectures. .NET's maturation is evident in its robust support for contemporary development paradigms, including , with , and cloud-native applications. Official guidance from outlines how .NET applications can be containerized using for consistent deployment across environments, while frameworks like .NET Aspire simplify orchestration in for distributed systems. These integrations enable developers to build resilient, scalable services that align with cloud-native principles, such as those defined by the , without compromising performance or security. As of 2025, .NET boasts over 5 million active developers worldwide, underscoring its widespread adoption and reliability for mission-critical applications. Prominent companies leveraging .NET include itself for products like Copilot and for its core platform built on . This ecosystem role not only drives innovation but also ensures .NET remains a preferred choice for building secure, high-performance software in diverse industries.

History

Origins and .NET Framework Era

Microsoft announced the .NET platform at the Professional Developers Conference (PDC) in July 2000, positioning it as a successor to (COM) technologies and a direct competitor to ' Java platform for building distributed web services and applications. The initiative aimed to shift from traditional desktop-focused development to a services-oriented architecture, leveraging XML and web standards to enable seamless interoperability across devices and platforms, while addressing limitations in COM's distributed computing model like DCOM. The first stable release, .NET Framework 1.0, arrived on February 13, 2002, bundled with Visual Studio .NET and featuring the (CLR) version 1.0 as its core execution engine. This version introduced managed code execution, garbage collection, and a unified base class library, primarily targeting Windows environments for server and desktop applications. Alongside it debuted C#, a new object-oriented language designed for high productivity on the .NET platform. Subsequent milestones enhanced the framework's capabilities while maintaining its Windows-centric focus. .NET Framework 2.0, released in November 2005 with CLR 2.0, introduced generics for type-safe collections and reusable code templates, significantly improving performance and developer efficiency over prior boxing mechanisms. In November 2007, .NET Framework 3.5 (still on CLR 2.0) added (), enabling declarative data querying directly in code across objects, databases, and XML, which bridged with relational paradigms. The framework's design emphasized integration with Windows technologies, such as for dynamic web applications, for rapid desktop UI development, and later Windows Presentation Foundation (WPF) in version 3.0 for vector-based, graphics-rich interfaces. .NET Framework 4.0, launched in April 2010 with CLR 4.0, further advanced language features by introducing dynamic types via the for late-bound operations and support for and contravariance in generics, allowing safer type conversions in interfaces and delegates. These updates solidified .NET's role in enterprise development but drew criticisms for its tight coupling to Windows, leading to concerns as applications became dependent on Microsoft-specific APIs and runtime. The platform faced stiff competition from , which offered broader cross-platform portability and an established , prompting ongoing debates about .NET's Windows exclusivity limiting adoption in heterogeneous environments.

.NET Core and Platform Unification

.NET Core was introduced as a modular, open-source rewrite of the .NET Framework, designed to enable cross-platform development beyond Windows. Released on June 27, 2016, .NET Core 1.0 provided a lightweight runtime and libraries optimized for server-side applications, cloud services, and microservices, addressing the limitations of the Windows-only .NET Framework. Key features of .NET Core included its modular architecture, which allowed developers to include only necessary components to reduce application size and improve performance. It integrated NuGet for package management, enabling efficient dependency resolution and updates across projects. Self-contained deployments permitted applications to bundle the runtime and libraries, eliminating the need for a shared .NET installation on the target machine. Additionally, .NET Core 1.0 extended support to Linux distributions like Ubuntu and Red Hat Enterprise Linux, as well as macOS, facilitating deployment in diverse environments. In May 2019, Microsoft announced plans for platform unification to streamline the .NET ecosystem by merging .NET Core and .NET Framework into a single development platform. This initiative aimed to simplify developer workflows, reduce fragmentation, and provide a consistent set of APIs and tools across Windows, , and macOS. The first unified release, .NET 5, arrived on November 10, 2020, incorporating the cross-platform capabilities of .NET Core with select Windows-specific features from .NET Framework, while deprecating legacy components. The unification process significantly impacted key frameworks, transitioning web and data access technologies to cross-platform models. , evolved from .NET Core, became the standard for building modern web applications, offering improved performance, middleware-based architecture, and support for high-throughput scenarios like APIs and real-time services. Similarly, Entity Framework Core provided a lightweight, extensible ORM for data access, emphasizing cross-platform database interactions with providers for SQL Server, PostgreSQL, and SQLite, while maintaining compatibility with existing patterns. Subsequent milestones advanced the unified platform's maturity. .NET 6, released in November 2021 as a (LTS) version with three years of support, introduced Hot Reload, allowing developers to modify code in running applications without restarting, enhancing productivity in iterative development. .NET 7, launched in November 2022, focused on performance optimizations tailored for cloud-native applications, including faster processing in and improved in System.Text., resulting in up to 50% better throughput for web workloads.

Recent Versions and Developments

.NET 8, released on November 14, 2023, as a (LTS) version, introduced Native Ahead-of-Time (AOT) compilation, enabling developers to produce self-contained executables with reduced startup times and smaller memory footprints for applications targeting diverse platforms. This release also enhanced the System.Text.Json library with features like improved support for read-only members, customizable handling of unmapped members, and better compatibility with Native AOT scenarios, bridging gaps with legacy serialization tools like Newtonsoft.Json. Additionally, received significant updates, evolving into a full-stack that supports rendering at both component and page levels, facilitating seamless development of interactive applications. .NET 9, launched on November 12, 2024, as a standard-term support (STS) release, advanced and capabilities through updates to version 4.0, an open-source framework for integrating custom ML models into .NET applications, including improved support for , price prediction, and fraud detection. It bolstered ARM64 architecture support with experimental Scalable Vector Extension (SVE) features and vectorization optimizations in the , enhancing performance on ARM-based devices and servers. For cloud workloads, .NET 9 delivered extensive performance enhancements, such as loop optimizations, inlining improvements, and the introduction of .NET Aspire for building distributed, cloud-native applications with simplified orchestration and observability. .NET 10, released on November 11, 2025, as a (LTS) version with support through November 2028, emphasizes performance improvements across the runtime, SDK, and libraries. Key enhancements include compiler optimizations, 10.0 updates with improvements and OpenAPI enhancements, and Entity Framework Core 10 for advanced data handling. It also introduces new APIs in for enhanced security, aligning with initiatives. In October 2025, Microsoft issued a cumulative update for .NET Framework 4.8.1 on October 14, addressing critical vulnerabilities including a remote code execution issue detailed in CVE-2025-21176, ensuring continued security for legacy applications reliant on the Framework. Looking ahead, .NET's future directions include deeper GitHub Copilot integrations for AI-assisted coding in .NET development, such as agentic AI for app modernization and Visual Studio enhancements, as highlighted in Microsoft Build 2025 announcements.

Design and Architecture

Common Language Runtime

The (CLR) serves as the execution engine for .NET applications, functioning as a that manages the execution of managed code and delivers essential runtime services such as , threading, , and remoting. It enables cross-language integration by compiling code from various .NET languages into an intermediate language (IL) that the CLR interprets and executes, providing features like automatic garbage collection to handle object lifetimes and for robust error management. Different versions of the CLR underpin the evolution of .NET platforms. In the .NET Framework, CLR version 4.0 supports .NET Framework 4.0 and later releases, incorporating enhancements in performance, debugging, and security while maintaining with earlier CLR versions like 2.0 for .NET Framework 2.0–3.5. For .NET Core and the unified .NET platform (starting with .NET 5), CoreCLR replaces the full CLR as an open-source, cross-platform runtime that includes core components like the just-in-time (JIT) compiler, garbage collector, and primitive types, optimized for modern deployment scenarios without the legacy features of the full Framework CLR. Key mechanisms in the CLR ensure efficient and isolated code execution. The managed heap automatically allocates and deallocates memory for objects through garbage collection, preventing memory leaks and enabling developers to focus on logic rather than manual resource management. Exception handling operates via structured try-catch blocks that propagate errors across language boundaries, allowing uniform treatment of exceptions in managed code. Application domains (AppDomains) provide logical isolation within a single process, facilitating security boundaries and code unloading in .NET Framework, though in .NET Core and later, AppDomains are limited and do not support full isolation or unloading, relying instead on process-level boundaries for similar purposes. Security in the CLR has evolved across platforms. In .NET Framework, enforces permissions based on code evidence, such as origin or publisher, to restrict access to sensitive resources and mitigate risks from untrusted assemblies. However, CAS was deprecated due to complexity and performance overhead, and in .NET Core and unified .NET, security is simplified with a transparent model that removes CAS infrastructure, emphasizing , OS-level protections, and developer-controlled without runtime permission demands.

Base Class Library and Intermediate Language

The Base Class Library (BCL) in .NET is a comprehensive collection of reusable classes, interfaces, delegates, and value types that provide foundational functionality for applications, enabling developers to access system resources and accelerate development without reinventing common components. It includes APIs for essential operations such as (I/O), networking, , and data collections, primarily organized under the namespace and its sub-namespaces. For instance, the System.IO namespace offers classes like and for file handling and data streams, while System.Net provides utilities such as for URI manipulation and web-related protocols. Similarly, System.Security.Cryptography supplies cryptographic primitives for encryption and hashing, and System.Collections.Generic delivers type-safe collections like List and for efficient . These components are designed to be CLS-compliant, promoting across .NET languages by adhering to the Common Language Specification. The (CIL), formerly known as (MSIL), serves as the format in .NET, representing compiled code in a CPU-independent manner to facilitate execution across diverse architectures and operating systems. CIL consists of a set of low-level instructions for operations like arithmetic, method calls, and , stored within (PE) files alongside metadata that describes types, members, and assemblies. This format enables seamless language interoperability, as code written in languages like C# or compiles to the same CIL representation, allowing assemblies from different languages to interact without compatibility issues. By abstracting platform-specific details, CIL ensures that .NET applications remain verifiable for before execution. In the .NET compilation process, from high-level languages is first translated by language-specific compilers into , which generates the necessary for and loading. This intermediate step produces a platform-agnostic that can be distributed and executed on any supported environment. At , the (CLR) employs a (JIT) compiler to convert the CIL instructions into native optimized for the host , performing this translation on-demand for each method invocation to balance startup speed and execution efficiency. The resulting native code is cached for subsequent calls, enhancing performance while maintaining CIL's role as the unifying portable format. The BCL differs between .NET Framework and .NET Core (now unified as .NET 5+), with the latter featuring a trimmed and modularized version optimized for cross-platform deployment by excluding Windows-specific dependencies and focusing on a core subset of . For example, while .NET Framework's BCL includes extensive Windows-integrated features like default shell execution in process starts, .NET Core changes such defaults (e.g., ProcessStartInfo.UseShellExecute to false) to improve portability and reduce overhead on non-Windows systems. In areas like I/O, networking, and , .NET Core introduces behavioral changes for consistency, such as stricter in FileSystemInfo.Attributes or of WebClient in favor of HttpClient for modern asynchronous patterns, ensuring the BCL remains lightweight and compatible via .NET Standard specifications that define shared across implementations. This evolution allows .NET Core's BCL to support broader ecosystems, including and macOS, without the full footprint of .NET Framework's Windows-centric libraries.

Compilation and Execution Model

The .NET compilation and execution model employs a two-phase approach to transform into executable , beginning with to platform-agnostic intermediate language () followed by just-in-time () or ahead-of-time (AOT) to native code. In the traditional model, which is the default for most .NET applications, the () compiles to native on-the-fly during execution, enabling runtime optimizations tailored to the specific and . This dynamic occurs per as needed, ensuring efficient use of resources while allowing for adaptive improvements. Introduced prominently in .NET 7 and enhanced in subsequent versions up to .NET 10, Native AOT represents the ahead-of-time alternative, where the entire application—including and dependencies—is compiled into a single native executable before deployment, eliminating the need for a separate phase at execution time. This approach produces self-contained binaries that start faster and have a smaller , as no compiler is required during , making it suitable for cloud-native, edge, or restricted environments where dynamic compilation is prohibited. However, Native AOT trades some flexibility for upfront compilation time and requires careful handling of reflection-heavy code due to trimming optimizations that remove unused portions. The execution pipeline in .NET begins with IL verification upon assembly loading, a security and type-safety check that examines the code's metadata and structure to ensure it adheres to the (CLI) specifications, preventing invalid operations like type mismatches or unsafe memory access. Verified IL is then subject to JIT compilation on a method-by-method basis, where the RyuJIT compiler (used since .NET Core) generates optimized native code for the target architecture. To balance startup speed and peak performance, .NET implements tiered compilation, which initially compiles methods quickly using minimal optimizations (Tier 0) and later recompiles frequently executed "hot" methods with aggressive optimizations (), based on call thresholds and profile data. .NET's memory management relies on a generational (GC) integrated into the CLR, which divides the managed into three generations to optimize collection efficiency: Generation 0 for short-lived objects (e.g., temporary allocations), Generation 1 as a buffer for promoting surviving objects, and Generation 2 for long-lived objects, with full collections occurring less frequently on higher generations to minimize pauses. Objects larger than 85 KB are allocated on a separate large object (LOH), which uses non-generational collection to avoid fragmentation issues common in compacting smaller heaps. This model enables automatic memory reclamation without explicit developer intervention, though server GC modes (enabled by default in .NET Core for multi-core systems) scale collections across multiple threads for better latency control. LOH compaction is available but requires explicit configuration and occurs during full blocking GC. Key optimization techniques in the .NET JIT compiler include method inlining, which replaces function calls with the actual code body to eliminate overhead and enable further transformations, to reduce iteration control costs by duplicating loop bodies, and (PGO) introduced in .NET 7, where runtime execution profiles collected during training runs inform subsequent compilations for better branch prediction and code layout. These techniques, refined in recent versions up to .NET 10 with enhanced loop vectorization and , adapt to observed usage patterns. As of November 2025, .NET 10 continues to build on these runtime improvements.

Supported Languages

Primary Languages

The primary programming languages natively supported by .NET are C#, F#, and Visual Basic .NET (VB.NET), each designed to leverage the .NET Common Language Runtime (CLR) for building robust applications across various paradigms. These languages compile to Common Intermediate Language (IL) code, enabling seamless integration within the .NET ecosystem while offering distinct syntactic and conceptual approaches to development. C# is a modern, object-oriented, and type-safe programming language developed by , first released in July 2000 as part of the initial .NET Framework. It emphasizes simplicity, productivity, and performance, supporting features such as classes, interfaces, inheritance, and generics for building scalable applications. Key language innovations include (LINQ) introduced in C# 3.0 (2007), which allows SQL-like querying of data structures directly in code; async/await patterns in C# 5.0 (2012) for efficient asynchronous programming; and records in C# 9.0 (2020) for immutable data types that simplify value object modeling. The latest version, C# 14, released with .NET 10 in November 2025, introduces extension members for classes and structs, including extension properties and operators, enhancing reusability without modifying original types. C# remains the most widely adopted .NET language, powering everything from web services to desktop applications due to its balance of expressiveness and CLR optimization. F# is a functional-first, multi-paradigm created by , with its first stable release (F# 1.0) in May 2005. Designed to run on the .NET platform, F# fully supports .NET types and libraries while prioritizing concepts like higher-order functions, immutability by default, and lightweight syntax for concise code. Core features include for destructuring data and handling variants via discriminated unions, which enhance and expressiveness in tasks. Immutable data structures are encouraged through F#'s , reducing side effects and improving concurrency in applications like and scientific computing. F# 10, released with .NET 10 in November 2025, introduces refinements such as scoped warning suppression and access modifiers on auto-property accessors, enhancing code maintainability and performance. Visual Basic .NET (VB.NET) is an object-oriented language that evolved from the original (VB6), with its initial release in February 2002 alongside the .NET Framework 1.0. Unlike its predecessor, VB.NET is fully integrated with the CLR, providing , garbage collection, and access to the full .NET class library while retaining a syntax familiar to legacy VB developers. It supports through delegates and events, making it suitable for applications with . VB.NET includes options for late binding via the Object type and Option Strict Off, allowing dynamic invocation similar to VB6, though modern usage favors early binding for performance. Updates in Visual Basic 16.0 (2019) with .NET Core 3.0 added support for .NET Core, including community-ported financial and file functions, along with improved designer and interoperability with other .NET languages. VB.NET continues to be supported in .NET 10 (November 2025) with a focus on compatibility and performance for enterprise applications.

Language Interoperability and Extensibility

The (CTS) in .NET provides a unified for defining, declaring, and managing types across different programming languages, enabling seamless by ensuring that all languages adhere to a shared set of type rules. All .NET-compatible languages compile their into (CIL, also known as IL), a platform-agnostic that the (CLR) executes, allowing types defined in one language to be directly consumed and extended in another. For instance, a class authored in C# can be instantiated and inherited from within an F# project without requiring wrappers or conversions, as both compile to the same IL and leverage CTS for and compatibility. Assemblies in .NET, which are the fundamental units of deployment as .exe or .dll files, encapsulate compiled code along with rich that describes types, members, and dependencies, facilitating cross-language integration. This , stored in the assembly , enables the CLR to resolve references and enforce boundaries while allowing dynamic and loading at through the System. namespace. APIs permit code to discover and invoke types from other assemblies programmatically, supporting scenarios like plugin architectures where components written in different languages are loaded on demand. The Roslyn compiler platform extends .NET's capabilities by providing open-source APIs for parsing, analyzing, and generating code, allowing developers to create custom compilers or embed .NET languages into domain-specific languages (DSLs). Roslyn's syntax and semantic models enable the construction of new languages that target the CLR, such as IronPython, which implements Python semantics while fully interoperating with .NET libraries and types. This extensibility supports advanced use cases, including custom DSLs for configuration or scripting that compile to IL and integrate with existing .NET assemblies. Despite these features, has limitations rooted in the Common Language Specification (CLS), which defines rules for type compatibility to ensure broad accessibility across languages. For example, public members must use CLS-compliant types like Int32, avoiding non-compliant ones such as unsigned integers (e.g., UInt16) to prevent accessibility issues in languages without native support. Additionally, while circular dependencies between assemblies are technically permitted by the CLR, they can lead to warnings or challenges if assembly identities mismatch, and are generally discouraged to maintain clean dependency graphs. Developers can enforce CLS compliance using the CLSCompliantAttribute to mitigate these constraints during .

Development Tools and Environment

Integrated Development Environments

Microsoft's serves as the flagship () for .NET development, originally released in 1997 as a comprehensive tool for building Windows applications. It has evolved into a full-featured supporting multiple languages and frameworks, with editions tailored to different user needs: the free edition for individual developers and open-source projects, the edition for small teams with advanced testing tools, and the edition for large-scale enterprise development featuring architecture validation and performance profiling. Key features include IntelliSense for and suggestions, robust capabilities with breakpoints and variable inspection, and seamless integration for directly within the . Visual Studio 2026, the latest major version as of 2025, provides full support for .NET 9, enabling developers to build modern applications with enhanced performance and cloud-native features. It also integrates AI-assisted coding through , which offers real-time code suggestions and explanations to accelerate productivity. For lighter-weight and cross-platform development, (VS Code) functions as an extensible code editor optimized for .NET via the official C# extension, which leverages the open-source OmniSharp language server for features like , refactoring, and . This setup allows .NET developers to work on Windows, macOS, and without the resource demands of a full . Among alternatives, stands out as a cross-platform specifically tailored for .NET, offering advanced refactoring tools, code analysis, and support for game development alongside seamless integration with .NET frameworks.

Command-Line Interface and Build Tools

The .NET (CLI), known as the dotnet tool, is a cross-platform introduced with .NET Core 1.0 for developing, building, running, and publishing .NET applications without relying on graphical integrated development environments. It provides a unified set of commands that operate on project files, such as .csproj, enabling automation in / (CI/CD) pipelines and script-based workflows across Windows, macOS, and . Key commands in the .NET CLI include dotnet new, which scaffolds new projects or files from predefined templates, such as console applications or libraries, allowing developers to specify options like and version. The dotnet build command compiles into binaries, supporting incremental builds to optimize performance by recompiling only changed files. Similarly, dotnet run executes an application directly from , combining build and launch steps for rapid iteration during development. At the core of the build process is MSBuild, an XML-based build engine integrated into the .NET SDK that processes project files to define targets, properties, and tasks for compiling and linking code. Project files use an MSBuild schema to specify dependencies, output paths, and conditional logic, enabling extensible and customizable builds that support parallel execution and incremental updates to reduce build times. Developers invoke MSBuild via the dotnet msbuild command, which offers the same functionality as the standalone MSBuild executable, including verbose logging for debugging build issues. NuGet, the package manager for .NET, integrates seamlessly with the CLI to handle dependencies through commands like dotnet restore, which downloads and resolves packages listed in the project file from repositories such as nuget.org. The dotnet add package command installs specific packages, updating the project file automatically, while dotnet remove package and dotnet publish manage removals and deployment-ready outputs, respectively, ensuring across environments. For testing, the dotnet test command executes unit and integration tests within a project, supporting popular frameworks such as and by discovering and running test assemblies in parallel. It generates reports in formats like XML for integration and allows filtering tests by name or traits, providing exit codes to indicate pass/fail status without requiring additional tools. Frameworks like emphasize extensibility and trait-based categorization, while offers advanced assertions and data-driven tests, both installable via for easy adoption in CLI workflows.

Cross-Platform and Deployment Features

Operating System Support

The unified .NET platform, starting with .NET 5, provides cross-platform support across multiple operating systems, enabling developers to build and deploy applications on , , macOS, , and using a single codebase. Specific supported versions for .NET 9 include version 22H2 and versions 22H2, 23H2, and 24H2 (including , 2019, 2022, and 2025), various Linux distributions such as 22.04 LTS and 24.04 LTS, 25.04, and 25.10, (RHEL) 8 and later, 9 and later, and 10, macOS 14 (Sonoma) and later, API level 21 ( 5.0) and higher, and 12.2 and later. This support follows Microsoft's .NET Supported OS Policy, which aligns .NET's lifecycle with the underlying OS end-of-support dates, ensuring security updates for compatible combinations until the .NET version reaches end-of-life. In contrast, the legacy .NET Framework remains Windows-exclusive, with its latest version, 4.8.1, integrated into and supported alongside compatible Windows operating systems such as , , , and later editions. Support for .NET Framework 4.8.1 extends as long as the host Windows OS is within its lifecycle, without independent cross-platform capabilities. For runtime execution, .NET employs CoreCLR as the core runtime on non-Windows platforms, handling , garbage collection, and other execution services across , macOS, and mobile environments. Prior to .NET MAUI, mobile development on and relied on the Mono runtime, an open-source implementation of the .NET runtime optimized for those platforms in tools like . Applications can be deployed in framework-dependent mode, requiring a pre-installed .NET on the target OS, or self-contained mode, which bundles the and libraries for standalone execution without dependencies, though at the cost of larger deployment sizes. The .NET 9 SDK, necessary for , has a size of approximately 200 MB across supported platforms.

Hardware Architecture Compatibility

.NET primarily supports the x86 (32-bit) and x64 (AMD64) processor architectures across its runtime and development tools, enabling broad compatibility with legacy and modern /AMD-based systems. These architectures form the foundation for .NET applications on Windows, , and macOS, with x64 being the most widely used due to its performance advantages in 64-bit environments. Starting with .NET 6, ARM64 support was introduced, providing native execution on (such as and M3 processors) and devices, which expands .NET's reach to energy-efficient mobile and scenarios. This native ARM64 implementation allows developers to target these platforms without relying on for optimal performance. For x64 applications on ARM64-based macOS systems, Apple's 2 emulation layer enables seamless execution, translating x64 instructions to ARM64 at . Additionally, experimental support for (WASM) exists through runtime identifiers and intrinsics, allowing .NET code to run in browser environments via WebAssembly, though it remains non-primary for general-purpose applications. Ahead-of-time (AOT) compilation in .NET generates native binaries tailored to specific architectures like x64 and ARM64, eliminating overhead and significantly reducing startup times—often by factors of 2-10x compared to scenarios—while producing smaller deployable artifacts. This feature is particularly beneficial for containerized or serverless deployments on supported platforms. Performance optimizations further enhance hardware utilization, with .NET 8 introducing advanced capabilities through SIMD intrinsics, including Vector512 types and support on x64, as well as improved auto-vectorization for memory operations on ARM64. These intrinsics leverage hardware-specific instructions to accelerate compute-intensive tasks, such as numerical processing and workloads, providing up to 2x throughput gains in vectorized code paths.

Deployment Models

.NET applications can be deployed using several models that balance portability, size, and dependency management. The primary models are framework-dependent and self-contained deployments, with additional options like single-file publishing and for enhanced distribution. These approaches leverage .NET's cross-platform capabilities across supported operating systems and architectures. Framework-dependent deployment produces a platform-specific and application binaries that rely on an installed .NET on the target machine. This model results in smaller deployment sizes since the runtime is not bundled, allowing applications to benefit from the latest patches and updates to the shared . It is the default publishing mode and supports roll-forward to the latest compatible version for better compatibility. In contrast, self-contained deployment includes the .NET runtime and libraries within the application package, creating a fully portable bundle that does not require a pre-installed . This approach ensures precise control over the version and enables execution on machines without .NET installed, though it increases the overall deployment size significantly. Self-contained applications are targeted to specific runtime identifiers (RIDs) for platforms like Windows, , or macOS. Single-file publishing, available since .NET 5, bundles the application and its dependencies—including the in self-contained mode—into a single , simplifying distribution by reducing the number of files to manage. This feature produces - and OS-specific binaries, with options for to mitigate larger sizes, and is particularly useful for easier and reduced complexity in deployment scenarios. For cloud environments, .NET supports deployment to Azure App Service, where applications can run in framework-dependent or self-contained modes, often integrated with pipelines. Containerization using images is another key option, with .NET 8 introducing built-in support for publishing directly to containers via the dotnet publish command, enabling consistent deployment across cloud and on-premises infrastructures. .NET also facilitates side-by-side installation of multiple runtime versions on the same system, allowing applications to bind to specific versions without conflicts and supporting coexistence of major and minor releases across architectures. This model enhances flexibility in environments with diverse application requirements, such as settings with and modern .NET apps.

User Interface Frameworks

and UI Options

For desktop applications, .NET provides two primary frameworks: (WinForms) and Windows Presentation Foundation (WPF). WinForms, introduced in 2002 with the initial release of .NET Framework 1.0, offers a straightforward, drag-and-drop approach to building graphical user interfaces using visual controls and , making it suitable for rapid development of legacy Windows desktop applications. It remains supported as an open-source technology on modern .NET versions, though it relies on and is less flexible for high-DPI or resolution-independent designs. In contrast, WPF, released in 2006 as part of .NET Framework 3.0, employs XAML for declarative markup, enabling vector-based graphics, hardware-accelerated rendering, and rich media integration for more sophisticated, scalable desktop experiences. WPF's architecture separates from , supporting data binding, styling, and animations, which positions it as the preferred choice for contemporary Windows-only desktop apps requiring visual fidelity. On the web side, ASP.NET Core serves as the foundational framework for developing modern server-side web applications, emphasizing high performance, modularity, and cross-platform compatibility since its inception in 2016. It supports patterns like Model-View-Controller (MVC) for structured routing and separation of concerns, as well as Razor Pages for page-focused scenarios that simplify handler logic without full controllers. These options leverage middleware pipelines for request processing, dependency injection, and configuration, allowing developers to build scalable APIs and dynamic sites efficiently. Recent updates in .NET 10 include enhancements to Blazor such as improved security samples, QuickGrid features, and better OpenAPI support. For interactive web UIs, extends .NET's capabilities by enabling full-stack development with C# instead of , supporting both server-side rendering via and client-side execution through in . uses for real-time UI updates over a persistent connection, ideal for low-latency applications, while downloads .NET runtime to the browser for offline-capable, single-page apps. Key features enhance these frameworks' utility: , an open-source library integrated with , facilitates real-time communication such as live updates, chat, or notifications via WebSockets, , or Long Polling fallbacks. For Blazor specifically, component libraries like MudBlazor provide a Material Design-based collection of reusable UI elements, including grids, dialogs, and forms, streamlining development with over 20 million downloads and active community support as of 2025. Migration from .NET Framework to .NET (formerly .NET Core) is facilitated by tools like the .NET Upgrade Assistant, which analyzes projects, ports code, and addresses compatibility issues for WinForms, WPF, and applications, often requiring incremental refactoring for third-party dependencies and Windows-specific APIs. This process supports gradual modernization, such as retargeting projects to .NET 10 while maintaining Windows deployment as of November 2025.

.NET MAUI for Cross-Platform Apps

.NET Multi-platform App UI (.NET MAUI) is the evolution of .Forms, serving as a cross-platform for developing native and applications using a single shared C# codebase that targets , , macOS, and Windows. Released alongside .NET 6 in November 2021, .NET MAUI unifies the development experience by abstracting platform-specific APIs into a consistent .NET interface, enabling developers to build and deploy apps across multiple operating systems without duplicating code. This builds on the foundations of while integrating more deeply with the .NET ecosystem, supporting modern .NET features like AOT compilation for improved performance. Key features of .NET MAUI include declarative UI development with XAML or programmatic creation using C#, allowing for flexible and maintainable user interfaces. The framework employs a handler system to map cross-platform controls to native platform equivalents, ensuring apps render with authentic native performance and appearance on each supported OS. Additionally, .NET Hot Reload facilitates rapid iteration by enabling real-time updates to XAML and C# code without restarting the application, streamlining the and refinement process. In .NET 8, released in November 2023, .NET received significant advancements focused on quality and usability, including enhanced graphics capabilities through integration with SkiaSharp for cross-platform 2D rendering and image handling. improvements were introduced, such as automatic scrolling on when the keyboard obscures input fields, promoting better usability for users with disabilities. Support for Hybrid was bolstered, allowing developers to embed web-based Blazor components within native MAUI apps for hybrid UI scenarios that leverage both native and web technologies. Subsequent releases built on this: .NET 9 (November 2024) added performant handlers for CollectionView and CarouselView on and Mac , new controls, HybridWebView integration, and lifecycle improvements. In .NET 10 (November 2025), enhancements include further quality and performance optimizations, such as experimental CoreCLR and NativeAOT support on for up to 72% faster startup, new project templates with .NET Aspire, and HybridWebView events. .NET MAUI is widely adopted for enterprise applications requiring cross-platform consistency, such as Next's Sports Engine app, which manages team activities across mobile and desktop platforms with faster feature delivery. Performance benchmarks demonstrate up to 2x faster startup times in .NET 8 compared to previous versions, with further gains in .NET 9 and .NET 10, particularly on enabling smoother user experiences in resource-intensive apps.

Versioning and Lifecycle Management

Versioning Practices

.NET employs semantic versioning for its releases, following the MAJOR.MINOR.PATCH format as defined by the . In this scheme, the MAJOR version number increments annually with each new release starting from , the MINOR version introduces new APIs or behaviors without breaking changes, and the PATCH version addresses bug fixes while maintaining compatibility. For example, version 9.0.10 indicates the ninth major release, with minor version 0, and the tenth patch update. Backward compatibility is a core principle in .NET's versioning, ensuring that source code and from previous versions generally function without modification when targeting newer runtimes. commits to high compatibility levels, allowing applications built on earlier major versions to run on subsequent ones with minimal adjustments, though recompilation is recommended for optimal performance. This promise extends to libraries, where .NET Standard serves as a defining common across implementations; however, .NET Standard 2.1 remains the final version, with later .NET releases incorporating its features directly. Breaking changes, when necessary, are carefully managed through built-in analyzers that detect potential issues during and comprehensive upgrade guides that detail migration steps. Since .NET 5, implementations have closed remaining gaps from .NET Standard 2.0, enhancing cross-version interoperability without requiring library retargeting in most cases. These tools and practices minimize disruption for developers upgrading between versions. From .NET 5 onward, naming has been unified under the ".NET" brand, eliminating the ".NET Core" suffix used in prior iterations to reflect a single, cohesive ecosystem. This simplification aligns with the shift to annual major releases and streamlines versioning across SDK, , and libraries.

Support Policies and End-of-Life

provides structured for .NET through two primary channels: (LTS) releases, which receive three years of free including patches and technical assistance, and Standard Term Support (STS) releases, which receive two years of as of the policy update effective with .NET 9. LTS versions, such as .NET 8 released on November 14, 2023, supported until November 10, 2026, and .NET 10 released on November 11, 2025, supported until November 14, 2028, exemplify this extended coverage. STS versions like .NET 7, released on November 8, 2022, reached end of support on May 14, 2024. The extension of STS to 24 months, announced in September 2025, applies starting with .NET 9, released on November 12, 2024, which will be supported until November 10, 2026, aligning more closely with LTS durations to reduce upgrade frequency. For the .NET Framework, support is tied to the lifecycle of the host Windows operating system, with .NET Framework 4.8.1, released on August 9, 2022, receiving indefinite support through Windows updates and cumulative servicing releases as long as it runs on a supported Windows version. Older versions, such as .NET Framework 4.0, reached end of support on January 12, 2016, while .NET Framework 4.5.2, 4.6, and 4.6.1 ended support on April 26, 2022. Cumulative updates for .NET Framework continue to be delivered via Windows Update for supported versions, ensuring ongoing security and reliability without a fixed end date. After end of support, .NET releases receive no further updates, patches, or technical assistance, including critical security fixes, emphasizing the need for migration to active versions. Microsoft recommends using tools like the .NET Upgrade Assistant, an official utility that automates the analysis and conversion of projects from .NET Framework or older .NET versions to modern .NET, to facilitate transitions and mitigate risks from unsupported software. In contrast, .NET Framework benefits from continued security updates through Windows servicing channels post-individual version retirement.

Community and Adoption

Open-Source Contributions

The .NET platform operates under an open-source model, with its core hosted on the repository dotnet/runtime, which has garnered over 17,000 stars and facilitates contributions through pull requests since the project's open-sourcing in 2014. This serves as the primary hub for developing the cross-platform , libraries, and installers, enabling global developers to submit code changes, report issues, and collaborate on enhancements. The .NET Foundation, an independent non-profit organization established in 2014, oversees the governance and stewardship of .NET open-source projects, fostering collaboration and providing resources for community growth. It organizes key events such as .NET Conf, an annual that in 2025 featured sessions on advancements from November 11-13. Foundation members include major contributors like , , , , , and , who participate in technical steering to guide project direction. .NET components are licensed permissively to encourage broad adoption and modification; the runtime uses the MIT License, while select libraries and tools adopt the Apache 2.0 License. Community efforts extend to collaborative initiatives like hackathons and documentation improvements, with contributors actively submitting pull requests to repositories such as dotnet/docs for enhancing guides and tutorials. In 2025, these activities emphasized accessibility advancements, including semantic properties in .NET MAUI to better support assistive technologies for users with disabilities.

Usage Statistics and Industry Impact

According to the 2025 Stack Overflow Developer Survey, .NET remains a highly regarded platform among developers, with .NET 8 and later versions used by 16.7% of respondents in the past year and admired by 67.1% who expressed a desire to continue using it. C#, the primary language for .NET development, was used by 19.4% of developers and admired by 55.8%, underscoring its sustained popularity in professional settings. Web frameworks within the ecosystem, such as , saw 14.7% usage and 61.3% admiration rates, positioning .NET as a strong contender for backend and full-stack applications. These figures reflect .NET's consistent appeal, particularly for enterprise-scale projects requiring performance and reliability. In the enterprise sector, .NET powers critical applications for numerous Fortune 500 companies, leveraging its robustness for high-stakes environments like finance and gaming. For instance, Nasdaq utilizes .NET Core to manage high-frequency trading systems, processing vast financial data in real-time with enhanced security and scalability. In gaming, Unity Technologies relies on Mono—an open-source .NET implementation—for its scripting backend, enabling C# development for cross-platform games that have reached billions of users worldwide. ASP.NET holds approximately 4.7% of the server-side programming language market share across known websites, demonstrating its established role in web infrastructure. .NET's industry impact is amplified through its deep integration with , facilitating the transition to cloud-native architectures for over 95% of companies that rely on for hybrid cloud strategies. This synergy has driven developer productivity gains, with -based .NET applications enabling faster deployment and cost efficiencies in scalable environments. By 2025, trends show growing adoption of .NET for AI via , Microsoft's library that integrates seamlessly with .NET ecosystems for on-device inference and model training. Additionally, .NET's support for through frameworks like Azure IoT Edge allows efficient processing at the device level, supporting real-time analytics in industries such as and healthcare.

References

  1. [1]
    What is .NET? An open-source developer platform | .NET
    NET is a free, cross-platform, open-source developer platform. .NET has languages, editors, and libraries to build for web, mobile, desktop, games, and IoT.Why choose .NET? · C# programming language · Desktop apps · Microservices
  2. [2]
    Introduction to .NET - Microsoft Learn
    Jan 10, 2024 · .NET is a free, cross-platform, open-source developer platform for building many kinds of applications. It can run programs written in multiple languages.Components · Free and open source
  3. [3]
    Overview of .NET Framework - Microsoft Learn
    Mar 29, 2023 · .NET Framework is a technology that supports building and running Windows apps and web services. .NET Framework is designed to fulfill the following objectives:
  4. [4]
    Microsoft .NET and .NET Core - Microsoft Lifecycle
    Beginning with .NET 5.0, Microsoft .NET Core has been rebranded as .NET. ASP.NET Core and Entity Framework Core follow the same lifecycle as .NET Core.
  5. [5]
    NET Framework official support policy
    Aug 18, 2025 · NET Framework covers a broad set of technologies including the .NET Common Language Runtime, .NET Framework Base Class Libraries, WPF, ...
  6. [6]
    NET is free, open source, with no licensing costs - Microsoft
    .NET is an open-source developer platform with no licensing costs and free development tools for Linux, macOS, and Windows.<|control11|><|separator|>
  7. [7]
    Fundamentals of garbage collection - .NET | Microsoft Learn
    The garbage collector (GC) serves as an automatic memory manager. The garbage collector manages the allocation and release of memory for an application.
  8. [8]
    Common Type System - .NET - Microsoft Learn
    Jan 3, 2024 · The common type system defines how types are declared, used, and managed in the runtime, enabling cross-language integration, type safety, and ...Types In . Net · Enumerations · Type Members
  9. [9]
    What is .NET Framework? A software development framework | .NET
    .NET Framework is a software development framework for building and running applications on Windows. We recommend that all new product development .... Net And . Net Framework · Architecture Of . Net... · . Net Framework Faq
  10. [10]
    .NET game development on Windows, Linux, or macOS | .NET
    .NET is a free, cross-platform framework for game development, enabling cross-platform scripting and targeting platforms like Windows, macOS, and Linux.
  11. [11]
    .NET Foundation Established to Foster Open Development
    Apr 3, 2014 · At the Build 2014 conference today, Microsoft Corp. announced it is creating an independent .NET Foundation to foster open development and ...Missing: shift | Show results with:shift
  12. [12]
    NET Core is Open Source - Microsoft Developer Blogs
    Nov 12, 2014 · Today is a huge day for .NET! We're happy to announce that .NET Core will be open source, including the runtime as well as the framework ...Missing: shift | Show results with:shift
  13. [13]
    Azure development with Visual Studio - Microsoft Learn
    Jul 2, 2025 · Visual Studio is the most full-featured and complete environment for Windows developers to connect .NET and ASP.NET applications to Azure services.
  14. [14]
    What is Power Platform Tools for Visual Studio - Microsoft Learn
    Feb 4, 2025 · Power Platform Tools for Visual Studio supports rapid creation, debugging, and deployment of plug-ins, and custom workflow activities.Missing: ecosystem | Show results with:ecosystem
  15. [15]
    .NET Microservices. Architecture for Containerized .NET Applications
    Mar 22, 2023 · This guide is an introduction to developing microservices-based applications and managing them using containers.
  16. [16]
    Why choose the .NET developer platform?
    With over 5,000,000 .NET developers worldwide, you can leverage the large ecosystem by incorporating libraries from the NuGet package manager and the Visual ...
  17. [17]
    .NET customer showcase | .NET
    Customers all over the world, in many different industries, rely on .NET for their business. Read testimonials from customers who depend on .NET every day.
  18. [18]
    asp.net - Applications that use .NET - Stack Overflow
    Oct 23, 2008 · The ASP.NET web site's Getting Started has a "Who is using ASP.NET?" section that includes MySpace.com, Dell.com, Match.com, Monster.com, Costco ...
  19. [19]
    Microsoft Announces Groundswell of Support for .NET Platform
    Jul 11, 2000 · The Microsoft .NET Platform, announced June 22 at Forum 2000, is Microsoft's initiative for creating the next generation of software, which ...
  20. [20]
    20 years of .NET: Reflecting on Microsoft's not-Java - The Register
    Feb 15, 2022 · Visual Studio .NET was released on February 13th 2002, marking the moment when Microsoft's Java alternative was declared ready for business.
  21. [21]
    Microsoft Delivers First .NET Platform Developer Tools for Building ...
    Jul 11, 2000 · The Microsoft .NET Platform, announced June 22 at Forum 2000, is Microsoft's initiative for creating the next generation of software, which ...
  22. [22]
    NET Framework & Windows OS versions - Microsoft Learn
    Learn about key features in each version of .NET Framework, including underlying CLR versions and versions installed by the Windows operating system.Version Information · . Net Framework 3.5 · Remarks For Version 4.5 And...
  23. [23]
    What's new in .NET Framework - Microsoft Learn
    Jan 6, 2023 · See the Background Server Garbage Collection section of the Fundamentals of Garbage Collection topic. Background just-in-time (JIT) ...Missing: principles | Show results with:principles<|control11|><|separator|>
  24. [24]
    Microsoft Introduces Highly Productive .NET Programming Language
    Microsoft Corp. today announced Microsoft® C # ( “C sharp” ), a modern, object-oriented programming language ...
  25. [25]
    Generic types (generics) overview - .NET - Microsoft Learn
    Jul 23, 2022 · First introduced in .NET Framework 2.0, generics are essentially a "code template" that allows developers to define type-safe data ...
  26. [26]
    What is Windows Presentation Foundation - WPF - Microsoft Learn
    This article gives an overview of Windows Presentation Foundation (WPF) with .NET. WPF is a Windows-only user interface (UI) framework.Tutorial: Create a new WPF app · Styles and templates · Animation Overview
  27. [27]
    Covariance and Contravariance (C#) - Microsoft Learn
    Jul 30, 2022 · In .NET Framework 4 and later versions, C# supports covariance and contravariance in generic interfaces and delegates and allows for implicit ...Variance in Generic Interfaces · Variance in Delegates (C#)Missing: 2010 | Show results with:2010
  28. [28]
    Cutting Edge - Using the Dynamic Keyword in C# 4.0 | Microsoft Learn
    The `dynamic` keyword in C# 4.0 enables dynamic typing, making a variable's type known at runtime, and is used for objects of uncertain type.Missing: covariance | Show results with:covariance
  29. [29]
    The Good and the Bad of .NET Development Framework - DZone
    Aug 16, 2022 · Vendor Lock-in .NET Framework is developed by Microsoft, which is ... This fact is often criticized by developers, as they want complete control ...
  30. [30]
    Programming Wars? That's history - Sagitec Solutions
    Aug 15, 2017 · It was practically a war between JAVA and . NET for server side programming. Microsoft released . NET as a direct competition to JAVA.
  31. [31]
    Announcing .NET Core 1.0 - Microsoft Developer Blogs
    Jun 27, 2016 · We are excited to announce the release of .NET Core 1.0, ASP.NET Core 1.0 and Entity Framework Core 1.0, available on Windows, OS X and Linux! .
  32. [32]
    What's new in .NET Core 3.0 - Microsoft Learn
    Feb 13, 2023 · Self-contained apps include everything needed to run your code, without requiring . NET to be installed on the host computer.
  33. [33]
    Introducing .NET 5 - Microsoft Developer Blogs
    May 6, 2019 · Today, we're announcing that the next release after .NET Core 3.0 will be .NET 5. This will be the next big release in the .NET family.
  34. [34]
    Announcing .NET 5.0 - Microsoft Developer Blogs
    Nov 10, 2020 · NET 5.0 is the first release in our .NET unification journey. We built .NET 5.0 to enable a much larger group of developers to migrate their .
  35. [35]
    Overview of Entity Framework Core - EF Core - Microsoft Learn
    Nov 12, 2024 · Entity Framework (EF) Core is a lightweight, extensible, open source and cross-platform version of the popular Entity Framework data access technology.Supported platforms · Getting Started · Installing Entity Framework Core
  36. [36]
    ASP.NET documentation - Microsoft Learn
    ASP.NET Core is used to create fast, secure, cross-platform, cloud-based web apps and services, including interactive, MVC, and real-time apps.Get started with EF Core in an... · Host and deploy ASP.NET Core · NET Core Blazor
  37. [37]
    Announcing .NET 6 - The Fastest .NET Yet - Microsoft Developer Blogs
    while your app is running — supported in Visual Studio ...
  38. [38]
    What's new in .NET 6 - Microsoft Learn
    May 26, 2023 · .NET 6 delivers the final parts of the .NET unification plan that started with .NET 5. .NET 6 unifies the SDK, base libraries, and runtime across mobile, ...
  39. [39]
    What's new in .NET 7 - Microsoft Learn
    Mar 8, 2023 · .NET 7 focuses on performance, includes on-stack replacement, improved System.Text.Json, generic math, and new regular expression options.Performance · System.Text.Json serialization
  40. [40]
    Announcing .NET 8 - Microsoft Developer Blogs
    Nov 14, 2023 · Text. Json. Helps populate read-only members, customizes unmapped member handling, and improves Native AOT support. .
  41. [41]
    What's new in System.Text.Json in .NET 8 - Microsoft Developer Blogs
    Sep 19, 2023 · This release marks an important milestone in our investment to ensure compatibility with .NET libraries being used in Native AOT applications.
  42. [42]
    What's new in ASP.NET Core in .NET 8 | Microsoft Learn
    This article highlights the most significant changes in ASP.NET Core in .NET 8 with links to relevant documentation.
  43. [43]
    What's new in .NET 9 - Microsoft Learn
    Aug 26, 2025 · .NET 9, the successor to .NET 8, has a special focus on cloud-native apps and performance. It will be supported for two years as ...Microsoft Ignite · Runtime · Net 8 · Breaking changes in .NET 9<|separator|>
  44. [44]
    What's new in .NET 9 runtime - Microsoft Learn
    Nov 11, 2024 · Garbage collection ... Dynamic adaptation to application sizes (DATAS) is now enabled by default. It aims to adapt to application memory ...Missing: principles | Show results with:principles
  45. [45]
    Performance Improvements in .NET 9 - Microsoft Developer Blogs
    Sep 12, 2024 · ... Write Barriers. The .NET garbage collector (GC) is a generational collector. That means it divides the heap up logically by object age, where ...
  46. [46]
    Announcing .NET 9 - Microsoft Developer Blogs
    Nov 12, 2024 · This new release includes thousands of performance, security, and functional improvements. You will find sweeping enhancements across the entire ...
  47. [47]
    NET 10 Preview 1 is now available! - Microsoft Developer Blogs
    Feb 25, 2025 · We just shipped our first preview release, adding to some major enhancements across the .NET Runtime, SDK, libraries, C#, ASP.NET Core, Blazor, ...
  48. [48]
    NET 10 Preview 7 is now available! - Microsoft Developer Blogs
    Aug 12, 2025 · Today, we are excited to announce the seventh preview release of .NET 10 with enhancements across the .NET Runtime, SDK, libraries, C#, ASP.Missing: defaults | Show results with:defaults
  49. [49]
    Microsoft will be carbon negative by 2030 - The Official Microsoft Blog
    Jan 16, 2020 · By 2030 Microsoft will be carbon negative, and by 2050 Microsoft will remove from the environment all the carbon the company has emitted either directly or by ...Microsoft: Carbon Negative... · Taking Responsibility For... · Empowering Customers Around...
  50. [50]
    What's new in .NET 10 - Microsoft Learn
    The ASP.NET Core 10.0 release introduces several new features and enhancements, including Blazor improvements, OpenAPI enhancements, and minimal API updates.Microsoft Ignite · EF Core 10 · What's new in the SDK and... · Aspire
  51. [51]
    October 14, 2025-KB5066746 Cumulative Update for .NET ...
    Oct 14, 2025 · Summary. This article describes the security and cumulative update for 3.5, 4.8 and 4.8.1 for Windows 10 Version 21H2. Security Improvements.
  52. [52]
    Microsoft Build 2025 Book of News
    May 19, 2025 · Microsoft Copilot Studio and Microsoft 365 Copilot are expanding with new capabilities that give low-code makers more tools in their toolbox to ...
  53. [53]
    A Developer's Guide to Build 2025 - Microsoft for Developers
    May 8, 2025 · Experience the deep integration of GitHub Copilot within Visual Studio, the premier IDE for Windows developers. This hands-on lab will guide you ...
  54. [54]
    Common Language Runtime (CLR) overview - .NET - Microsoft Learn
    .NET provides a run-time environment called the common language runtime that runs the code and provides services that make the development process easier.
  55. [55]
    dotnet/coreclr - GitHub
    Jan 23, 2023 · CoreCLR is the runtime for .NET Core. It includes the garbage collector, JIT compiler, primitive data types and low-level classes.
  56. [56]
    AppDomain Class (System) | Microsoft Learn
    On .NET Core, the AppDomain implementation is limited by design and does not provide isolation, unloading, or security boundaries. For .NET Core, there is ...Definition · Examples
  57. [57]
    Code Access Security - ADO.NET - Microsoft Learn
    Aug 23, 2024 · .NET Framework offers role-based security as well as code access security (CAS), both of which are implemented using a common infrastructure supplied by the ...Code access permissions · Role-based security and CAS
  58. [58]
    Most code access security APIs are obsolete - .NET - Microsoft Learn
    Code access security (CAS) is an unsupported legacy technology. The infrastructure to enable CAS exists only in .NET Framework 2.x - 4.x, but is deprecated and ...Change description · Reason for change
  59. [59]
    Overview of core .NET libraries - Microsoft Learn
    Learn about the core .NET libraries. .NET APIs include classes, interfaces, delegates, and value types to provide access to system functionality.Naming Conventions · System Namespace · Utility Apis
  60. [60]
    Managed Execution Process - .NET - Microsoft Learn
    Apr 20, 2024 · Compiling translates your source code into common intermediate language (CIL) and generates the required metadata. Compiling CIL to native code.
  61. [61]
    NET Framework to .NET Core - Breaking changes - Microsoft Learn
    May 1, 2024 · If you're migrating an app from .NET Framework to .NET Core versions 1.0 through 3.1, the breaking changes listed in this article might ...
  62. [62]
    .NET Standard - .NET | Microsoft Learn
    Nov 11, 2024 · .NET Standard is a formal specification of .NET APIs that are available on multiple .NET implementations. The motivation behind .NET Standard ...
  63. [63]
    Native AOT deployment overview - .NET | Microsoft Learn
    The Native AOT deployment model uses an ahead-of-time compiler to compile IL to native code at the time of publish. ... .NET is an open source project.
  64. [64]
    Tiered Compilation Preview in .NET Core 2.1
    2 Ağu 2018 · Tiered compilation is a significant new performance feature that we are making available as a preview for anyone to try out, starting in .NET ...
  65. [65]
    Managed Profile-Guided Optimization Using Background JIT
    Background JIT is supported in the Microsoft .NET Framework 4.5 and all later versions. There are three managed PGO techniques: Compile managed code to binary ...Managed Profile-Guided... · Traditional Jit · Background Jit
  66. [66]
    Introduction - C# language specification - Microsoft Learn
    The first widely distributed implementation of C# was released by Microsoft in July 2000, as part of its . NET Framework initiative.Missing: history | Show results with:history
  67. [67]
    The history of C# | Microsoft Learn
    This article provides a history of each major release of the C# language. The C# team is continuing to innovate and add new features.What's new in C# 11 · Relationships between... · Local functions
  68. [68]
    What's new in C# 13 - Microsoft Learn
    May 29, 2025 · C# 13 includes the following new features. You can try these features using the latest Visual Studio 2022 version or the .NET 9 SDK.Missing: history | Show results with:history
  69. [69]
    C# Guide - .NET managed language - Microsoft Learn
    The C# guide contains articles, tutorials, and code samples to help you get started with C# and the .NET platform.The history of C · What's new in C# 14 · Introduction · Display command-line
  70. [70]
    The early history of F# - Microsoft Research
    Jun 11, 2020 · F# was initiated in 2002, with core features developed 2004-2007, and productization by Microsoft in 2007-2010. It was a response to the object ...
  71. [71]
    What is F# - .NET - Microsoft Learn
    Oct 13, 2022 · F# is a universal programming language for writing succinct, robust and performant code. F# allows you to write uncluttered, self-documenting code.Rich data types · Correctness with functions and...Missing: history | Show results with:history<|control11|><|separator|>
  72. [72]
    Assemblies in .NET - Microsoft Learn
    You can programmatically obtain information about an assembly using reflection. For more information, see Reflection (C#) or Reflection (Visual Basic). You ...
  73. [73]
    Reflection in .NET | Microsoft Learn
    Mar 30, 2024 · Reflection provides objects that encapsulate assemblies, modules, and types. You can use reflection to dynamically create an instance of a type.
  74. [74]
    The .NET Compiler Platform SDK (Roslyn APIs) - C# | Microsoft Learn
    Oct 25, 2024 · The .NET Compiler Platform SDK includes the latest language object models for code generation, analysis, and refactoring. This section provides ...
  75. [75]
    CLR Inside Out: IronPython - Microsoft Learn
    It is well integrated with the rest of the .NET Framework and makes all .NET libraries easily available to Python programmers, while maintaining full ...
  76. [76]
    Language independence and language-independent components
    Dec 20, 2022 · The . NET common type system includes many built-in types that are supported directly by the common language runtime and are specially encoded ...Cls Compliance Rules · Types And Type-Member... · Generic Types And Members
  77. [77]
    Compiler Warning (level 2) CS1698 - C# | Microsoft Learn
    Circular assembly reference 'AssemblyName1' does not match the output assembly name 'AssemblyName2'. Try adding a reference to 'AssemblyName1' or changing ...
  78. [78]
    .NET CLI | Microsoft Learn
    The .NET command-line interface (CLI) is a cross-platform toolchain for developing, building, running, and publishing .NET applications.Dotnet command · Dotnet new · Dotnet build · Dotnet run
  79. [79]
    dotnet command - .NET CLI | Microsoft Learn
    The dotnet command has two functions: It provides commands for working with .NET projects. For example, dotnet build builds a project.Microsoft Ignite · Dotnet run · Dotnet new · Dotnet build
  80. [80]
    dotnet new <TEMPLATE> - .NET CLI - Microsoft Learn
    The dotnet new command creates a .NET project or other artifacts based on a template. The command calls the template engine to create the artifacts on disk.Dotnet sln · Dotnet new list · Dotnet new install · NET default templates for...
  81. [81]
    dotnet run command - .NET CLI - Microsoft Learn
    Oct 8, 2025 · The dotnet run command provides a convenient option to run your application from the source code with one command. It's useful for fast iterative development ...
  82. [82]
    MSBuild documentation - Microsoft Learn
    MSBuild documentation. MSBuild is a general purpose build system used by Visual Studio and the .NET SDK. Download. Visual Studio. Download .NET SDK.Command line · MSBuild · MSBuild properties · MSBuild targets
  83. [83]
    Use the MSBuild XML schema to control builds - Microsoft Learn
    May 11, 2025 · This engine, which is also known as MSBuild, provides an XML schema for a project file that controls how the build platform processes and builds software.MSBuild Command-Line... · MSBuild Reference · What's new in MSBuild 15
  84. [84]
    dotnet msbuild command - .NET CLI - Microsoft Learn
    The dotnet msbuild command allows access to a fully functional MSBuild. The command has the exact same capabilities as the existing MSBuild command-line client.
  85. [85]
    dotnet CLI NuGet commands - Microsoft Learn
    Jan 25, 2021 · The dotnet command-line interface (CLI), which runs on Windows, Mac OS X, and Linux, provides a number of essential commands such as installing, restoring, and ...
  86. [86]
    Install and manage NuGet packages with the dotnet CLI
    Mar 3, 2025 · You can use the dotnet CLI tool on Windows, macOS, or Linux to easily install, uninstall, and update NuGet packages in .NET projects and solutions.
  87. [87]
    dotnet test command - .NET CLI | Microsoft Learn
    The test host executes tests in the given project using a test framework, for example: MSTest, NUnit, or xUnit, and reports the success or failure of each test.
  88. [88]
    Testing with 'dotnet test' - .NET - Microsoft Learn
    This article provides insights into the dotnet test CLI command, including its history compatibility with both VSTest and Microsoft.Testing.Platform (MTP).
  89. [89]
    xUnit.net: Home
    xUnit.net is a free, open source, community-focused unit testing tool for C#, F#, and Visual Basic. xUnit.net v3 supports .NET 8.0 or later, and .NET Framework ...
  90. [90]
    NET and .NET Core official support policy
    Learn about .NET and .NET Core support policies, which refer to several technologies including the runtime, ASP.NET Core and Entity Framework Core.<|separator|>
  91. [91]
    core/os-lifecycle-policy.md at main · dotnet/core
    **Insufficient relevant content**: The provided content from the GitHub URL does not include the full text of `os-lifecycle-policy.md`. It only contains navigation, metadata, and boilerplate text without details on supported operating systems or versions for .NET 8 and .NET 9.
  92. [92]
  93. [93]
    .NET application publishing overview - .NET - Microsoft Learn
    This publishing option uses self-contained deployment mode, as the compiled native code must include everything needed to run the application. This results in ...Trim self-contained · ReadyToRun compilation · Single-file deploymentMissing: key | Show results with:key
  94. [94]
    Download .NET 9.0 (Linux, macOS, and Windows) | .NET
    Microsoft Cloud · AI · Azure Space · Mixed ... These releases are generally not supported for production use. Release notes. Latest release date: July 9, 2024 ...
  95. [95]
    NET Runtime Identifier (RID) catalog - Microsoft Learn
    Jul 11, 2024 · The following values are examples of RIDs: linux-x64 , win-x64 , or osx-x64 . For the packages with native dependencies, the RID designates on ...
  96. [96]
    Install .NET on macOS - Microsoft Learn
    This article teaches you about which versions of .NET are supported on macOS, how to install .NET, and what the difference is between the SDK and runtime.Missing: NuGet | Show results with:NuGet
  97. [97]
    Architecture Enum (System.Runtime.InteropServices) | Microsoft Learn
    An Intel-based 32-bit processor architecture. X64, 1. An Intel-based 64-bit processor architecture. Arm, 2. A 32-bit ARM processor architecture. Arm64, 3. A 64 ...
  98. [98]
    ASP.NET Core Blazor WebAssembly build tools and ahead-of-time ...
    Blazor WebAssembly supports ahead-of-time (AOT) compilation, where you can compile your .NET code directly into WebAssembly. AOT compilation results in ...NET WebAssembly build tools · Ahead-of-time (AOT) compilation
  99. [99]
    What's new in .NET 8 runtime - Microsoft Learn
    May 7, 2024 · Previously, this would fail because the garbage collector (GC) was unaware of the change and might allocate more memory than the new limit. With ...Missing: principles | Show results with:principles
  100. [100]
    Create a single file for application deployment - .NET - Microsoft Learn
    The size of the single file in a self-contained application is large since it includes the runtime and the framework libraries. In .NET 6, you can publish ...Missing: key | Show results with:key
  101. [101]
  102. [102]
  103. [103]
    Install .NET on Windows - Microsoft Learn
    On an Arm-based Windows PC, all Arm64 versions of .NET are installed to the normal C:\Program Files\dotnet\ folder. However, the x64 version of the .NET SDK is ...
  104. [104]
    Windows Forms for .NET documentation - Microsoft Learn
    Windows Forms documentation. Learn about using Windows Forms, an open-source, graphical user interface for Windows, on .NET.Overview · Create a new app · Overview of Using Controls
  105. [105]
    Windows Presentation Foundation for .NET documentation
    Learn about using Windows Presentation Foundation (WPF), an open-source, graphical user interface for Windows, on .NET.WPF overview · Tutorial: Create a new WPF app · XAML overview · Controls - WPF
  106. [106]
    Overview of ASP.NET Core - Microsoft Learn
    Jul 30, 2025 · Secure by design: ASP.NET Core is built with security as a top concern and includes built-in support for authentication, authorization, and data ...NET vs. .NET Framework for... · Core MVC · Incremental Migration
  107. [107]
    Overview of ASP.NET Core MVC - Microsoft Learn
    Jun 17, 2024 · ASP.NET Core MVC is a lightweight, open-source framework for building web apps and APIs using the MVC pattern, optimized for ASP.NET Core.
  108. [108]
    ASP.NET Core Blazor - Microsoft Learn
    Nov 12, 2024 · WebAssembly is an open web standard and supported in web browsers without plugins. WebAssembly works in all modern web browsers, including ...NET WebAssembly build tools · Blazor supported platforms · Blazor hosting models
  109. [109]
    ASP.NET Core Blazor hosting models | Microsoft Learn
    Nov 12, 2024 · This article explains Blazor hosting models, primarily focused on Blazor Server and Blazor WebAssembly apps in versions of .NET earlier than .NET 8.
  110. [110]
    Overview of ASP.NET Core SignalR | Microsoft Learn
    Dec 2, 2024 · ASP.NET Core SignalR is an open-source library that simplifies adding real-time web functionality to apps. Real-time web functionality ...Microsoft Ignite · Supported platforms · WebSockets · JavaScript client
  111. [111]
    MudBlazor - Blazor Component Library
    MudBlazor is more than a library. We bring together everything that's required to build amazing Blazor applications that scale from desktop to mobile.TryMudBlazor · Docs · Get Started · Releases
  112. [112]
    Upgrade .NET apps overview - .NET Core - Microsoft Learn
    Sep 16, 2025 · In this module, you'll learn to when, why, and how to modernize an ASP.NET Framework app to ASP.NET Core using the Upgrade Assistant. Events .Analyze dependencies to port... · NET Upgrade Assistant · Windows Forms
  113. [113]
    .NET Upgrade Assistant Overview - .NET Core - Microsoft Learn
    Sep 16, 2025 · .NET Upgrade Assistant helps upgrade projects to newer versions of .NET, and analyzes your code to spot and fix potential incompatibilities.
  114. [114]
  115. [115]
    .NET Multi-platform App UI (.NET MAUI) | .NET
    NET MAUI is a framework used to build native, cross-platform desktop and mobile apps from a single C# codebase for Android, iOS, Mac, and Windows.
  116. [116]
  117. [117]
  118. [118]
  119. [119]
  120. [120]
  121. [121]
  122. [122]
    How the .NET Runtime and SDK are versioned - Microsoft Learn
    This article explains how the .NET SDK and Runtime are versioned (similar to semantic versioning).Versioning Details · Semantic Versioning · Runtime Version Number...
  123. [123]
    Semantic Versioning 2.0.0 | Semantic Versioning
    We propose a simple set of rules and requirements that dictate how version numbers are assigned and incremented.
  124. [124]
    What's new in .NET Standard - Microsoft Learn
    NET SDK. It's also included with Visual Studio if you select the .NET workload. .NET Standard 2.1 is the last version of .NET Standard that will be released.
  125. [125]
  126. [126]
    NET STS releases supported for 24 months
    Sep 16, 2025 · NET 10 will ship on November 11, 2025, .NET 9 was scheduled to reach end of support on May 12, 2026. Version, Original release date, Latest ...
  127. [127]
    Microsoft .NET Framework - Microsoft Lifecycle
    Releases ;.NET Framework 4.8.1, Aug 9, 2022 ;.NET Framework 4.8, Apr 18, 2019 ;.NET Framework 4.7.2, Apr 30, 2018 ;.NET Framework 4.7.1, Oct 17, 2017.
  128. [128]
    NET is a cross-platform runtime for cloud, mobile, desktop ... - GitHub
    This repo contains the code to build the .NET runtime, libraries and shared host ( dotnet ) installers for all supported platforms.Issues · Activity · Releases 146
  129. [129]
    .NET is open source on GitHub | .NET
    .NET is open source and cross-platform and is maintained by Microsoft and the .NET community on GitHub. .NET consistently ranks among the top 30 most active ...Missing: stars | Show results with:stars
  130. [130]
    About - Who We Are - NET Foundation
    The .NET Foundation is a 501(c)(6) non-profit organization, which was established to support an innovative, commercially friendly, open-source ecosystem around ...
  131. [131]
    .NET Conf 2025
    Join the .NET Conf 2025 free virtual event November 11-13 to learn about the newest developments across the .NET platform, open source, and dev tools.Agenda · Local events · This year's speakers · Secret Decoder Challenge
  132. [132]
    Contribute to the .NET documentation repositories - Contributor guide
    Aug 9, 2023 · This document covers the process for contributing to the articles and code samples that are hosted on the .NET documentation site.Guidelines for contributions · Contribution process
  133. [133]
    Build accessible apps with semantic properties - .NET MAUI
    Semantic properties are used to define information about which controls should receive accessibility focus and which text should be read aloud to the user.
  134. [134]
    Technology | 2025 Stack Overflow Developer Survey
    It saw a 7 percentage point increase from 2024 to 2025; this speaks to its ability to be the go-to language for AI, data science, and back-end development.
  135. [135]
    The Power of .NET in Enterprise Applications - SoftwareSeni
    Aug 22, 2024 · NET Core allows Nasdaq to handle high-frequency trading, manage vast amounts of financial data securely, and ensure real-time transaction ...
  136. [136]
    Usage Statistics and Market Share of ASP.NET for Websites, November 2025
    - **Market Share**: ASP.NET is used by 4.7% of all websites whose server-side programming language is known, as of November 2025.
  137. [137]
    Microsoft Azure: The only consistent, comprehensive hybrid cloud
    Sep 25, 2018 · Customers choose Azure to power their hybrid cloud strategies. More than 95 percent of Fortune 500 companies trust their business on Azure today ...