The predecessor of .NET MAUI for mobile development
What is Xamarin and its evolution toward .NET MAUI
Everything you need to know about Xamarin: cross-platform mobile development with C# and .NET, and the migration path to .NET MAUI.
Xamarin was Microsoft's framework for creating native mobile applications for iOS, Android and Windows using C# and .NET.
For years, Xamarin allowed .NET developers to enter the mobile world without having to learn Swift, Kotlin or Java. A single codebase, native apps on every platform.
Today Xamarin has evolved into .NET MAUI, the new generation of Microsoft cross-platform development. But understanding Xamarin remains fundamental for those managing existing applications or planning a migration.
How Xamarin worked: architecture and approaches
Xamarin offered two main approaches:
| Approach | Description |
|---|---|
| Xamarin.Native | Direct access to native APIs of each platform with platform-specific UI for iOS and Android. Maximum control. |
| Xamarin.Forms | Shared UI across platforms with XAML. Less platform-specific code, more sharing. |
Technology stack
| Component | Description |
|---|---|
| Mono Runtime | .NET runtime for iOS and Android, compiled AOT on iOS and JIT on Android. |
| Xamarin.iOS | Complete binding of native iOS APIs (UIKit, CoreData, ARKit). |
| Xamarin.Android | Complete binding of native Android APIs (Activities, Fragments, Material Design). |
| Xamarin.Forms | Cross-platform UI framework with native renderers for each platform. |
| Xamarin.Essentials | Unified APIs for device features (GPS, sensors, connectivity, file system). |
From Xamarin to .NET MAUI: the evolution
.NET MAUI is the direct evolution of Xamarin.Forms, integrated into the unified .NET runtime:
| Aspect | Xamarin.Forms | .NET MAUI |
|---|---|---|
| Project | Separate projects per platform | Single multi-target project |
| Runtime | Mono | Unified .NET |
| UI | Renderer pattern | Handler pattern (more performant) |
| Platforms | iOS, Android, UWP | iOS, Android, Windows, macOS |
| Hot Reload | Limited | Full XAML and C# Hot Reload |
| Support | End of support May 2024 | Active support with .NET LTS |
If you have a Xamarin application, migrating to .NET MAUI is the natural step to ensure support, performance and modern features.
Advantages of Xamarin / .NET MAUI for mobile development
One language, all platforms, C# and .NET for iOS, Android, Windows and macOS. No Swift, Kotlin or Java.
Native performance, AOT compilation on iOS, JIT on Android: native apps, not hybrids.
Code sharing, Up to 90% of code shared across platforms, including business logic.
NET ecosystem, NuGet, LINQ, async/await, Entity Framework: all .NET tools available in mobile.
Integrated Visual Studio, Debug, deploy on emulators and real devices directly from the IDE.
Get started with .NET mobile development: resources
Related blog articles
Do you want to create mobile apps with .NET?
Develop native apps with C#
With our .NET MAUI course you'll learn to create cross-platform mobile and desktop applications with a single C# codebase.
Frequently asked questions
Xamarin è il framework Microsoft per creare app mobile native per iOS, Android e Windows usando C# e .NET. Permette di condividere fino al 90% del codice tra piattaforme.
Xamarin.Forms ha raggiunto la fine del supporto a maggio 2024. Il suo successore è .NET MAUI, che offre funzionalità migliorate e supporto attivo da Microsoft.
.NET MAUI è l'evoluzione di Xamarin.Forms con singolo progetto, runtime .NET unificato, handler pattern più performante e supporto per Windows e macOS oltre a iOS e Android.
Sì, la migrazione è fortemente consigliata per garantire supporto, sicurezza e accesso alle funzionalità moderne. Microsoft fornisce guide e strumenti per la migrazione.
Il modo migliore è seguire un percorso strutturato con progetti pratici. Il nostro corso .NET MAUI ti guida dallo sviluppo base fino alle architetture avanzate con mentoring personalizzato.