A Microsoft open-source framework for building native device applications spanning mobile, tablet, and desktop.
Hi @Yan Y ,
If you want to move a .NET MAUI app from .NET 9 to .NET 10, I would start with these steps:
- Make sure Visual Studio 2026 18.1.1 has .NET 10 and the MAUI workload installed.
- Update each project file from
net9.0-*tonet10.0-*. - Update any MAUI-related NuGet packages, if you reference them explicitly.
- Delete the
binandobjfolders. - Restore and rebuild the solution.
- Fix any warnings or breaking changes that appear after the rebuild.
The main project-file change is usually just the target frameworks. For example:
<TargetFrameworks>net10.0-android;net10.0-ios;net10.0-maccatalyst</TargetFrameworks>
<TargetFrameworks Condition="$([MSBuild]::IsOSPlatform('windows'))">$(TargetFrameworks);net10.0-windows10.0.19041.0</TargetFrameworks>
If your app uses platform-specific features, there are a few things worth checking after the upgrade:
- Deprecated MAUI APIs such as older animation methods and older UI types.
- Android settings, because .NET 10 moves forward with newer Android tooling.
- iOS/Mac Catalyst build requirements, especially if you build with a Mac.
- Trimming or AOT settings, if your project already uses them.
If the app builds cleanly after changing the target frameworks, the move can be fairly small. If it does not, the build errors usually point to the exact API changes that need attention.
Hope this helps! If my answer was helpful, I would greatly appreciate it if you could follow the instructions here so others with the same problem can benefit as well.