maui
.NET MAUI is the .NET Multi-platform App UI, a framework for building native device applications spanning mobile, tablet, and desktop.
.NET MAUI is Microsoft's framework for building native iOS, Android, Windows, and Mac apps from a single C# codebase, write your app once, and it compiles to run natively on every platform.
dotnet/maui is the source code for .NET MAUI (Multi-platform App UI), Microsoft's framework for building native mobile and desktop applications from a single shared codebase. Instead of writing separate apps for iPhone, Android, Windows, and Mac, you write one app in C# and XAML (a markup language for describing user interfaces) and MAUI compiles it to run natively on each platform.
The key benefit is code reuse: business logic, data handling, and much of the user interface can be shared across all target platforms, while still producing apps that feel native and use the platform's own controls and capabilities. It is the successor to Xamarin.Forms, expanding beyond mobile to also cover Windows and macOS desktop apps.
You would use .NET MAUI when you're building a cross-platform app and your team already works in the .NET ecosystem (C#, Visual Studio), or when you need to ship to both mobile and desktop without maintaining separate codebases. It integrates with Visual Studio and includes emulators for testing on Android and iOS without physical devices.
The framework targets Android, iOS, iPadOS, macOS (via Mac Catalyst), and Windows. You create a new project with a single command, and it sets up the shared structure automatically. It is written in C# and is an official Microsoft open-source project.
Where it fits
- Build a mobile app that runs on both iPhone and Android without maintaining two separate codebases
- Create a desktop app for Windows and macOS using the same code as your mobile app
- Port an existing Xamarin.Forms mobile app to .NET MAUI to gain Windows and macOS desktop support
- Ship a cross-platform business app using your team's existing C# and .NET skills and tooling