Introduction to .NET MAUI
Welcome to the official Microsoft Developer Network (MSDN) documentation for .NET MAUI. This guide will introduce you to the core concepts and capabilities of .NET Multi-platform App UI.
What is .NET MAUI?
.NET Multi-platform App UI (.NET MAUI) is an open-source, cross-platform framework for creating native mobile and desktop applications with C# and XAML from a single shared codebase. It's the evolution of Xamarin.Forms, providing a more unified and streamlined development experience.
With .NET MAUI, you can build apps that run on:
- Android
- iOS
- macOS (Mac Catalyst)
- Windows
Key Benefits of .NET MAUI
- Single Codebase: Write your app logic and UI once and deploy it across multiple platforms.
- Native Performance: .NET MAUI compiles to native application packages that can access device-specific APIs and features.
- Modern .NET: Built on .NET 6 and later, leveraging the latest performance improvements and language features of C#.
- XAML and C#: Choose your preferred way to define UI – declarative XAML for rich, data-bound UIs, or C# for dynamic UI construction.
- Extensibility: Easily extend the framework with custom renderers, handlers, and effects.
How .NET MAUI Works
.NET MAUI abstracts the native UI toolkits of each platform (Android SDK, UIKit for iOS, WinUI for Windows, AppKit for macOS). Your C# and XAML code is compiled into native .NET assemblies, which are then packaged with the runtime and any platform-specific dependencies.
When your app runs, .NET MAUI uses a handler-based architecture to map your abstract UI controls to their native counterparts on each platform. This ensures that your app looks and feels native on every device.
Core Components
.NET MAUI Essentials: A .NET Standard library that provides cross-platform APIs for accessing device capabilities like sensors, file system, battery, network status, and more.
.NET MAUI Controls: A rich set of UI controls (buttons, labels, text fields, lists, etc.) that are mapped to native controls on each platform.
Next Steps
Now that you have a basic understanding of .NET MAUI, you're ready to dive deeper. The following tutorials will guide you through setting up your development environment, building your first app, and exploring key features.