Microsoft has introduced union types to the C# language within the .NET 11.0 Preview 3 release [1].

This update represents a significant shift in the language's expressive power. By allowing discriminated union types, Microsoft enables developers to manage complex data structures more efficiently, reducing the boilerplate code typically required to handle multiple possible types for a single variable.

The release advances the C# language to version 15.0 [1]. This evolution is part of a broader effort by the .NET development team to simplify the handling of heterogeneous data structures [1]. These changes first appeared in Preview 2 before being further refined in the current Preview 3 build [2].

To access these new features, developers can use the Visual Studio 2026 Insiders version 11709.129 [1]. The integration of union types allows a variable to hold one of several predefined types, a feature long requested by the developer community to bring C# closer to the capabilities of functional programming languages.

Beyond the language version jump, the Preview 3 release also includes enhancements for file-based applications [1]. These updates aim to streamline the development process for apps that rely heavily on local file systems, though the primary focus remains the architectural shift provided by the new type system.

Microsoft said it has not provided a final release date for the stable version of .NET 11, but the preview cycle allows the community to test the 15.0 language specifications before general availability [1].

The update advances C# to version 15.0

The introduction of union types marks a transition for C# from a traditional object-oriented approach toward a more flexible hybrid model. By incorporating features common in functional languages, Microsoft is reducing the cognitive load and code verbosity for developers managing complex state, which likely improves long-term maintainability for large-scale enterprise software.