Skip to content

Guide · Open source

How to use MAUI: install, create an app and run it

Updated · written with AI from the project's own documentation and checked against our catalogue data

MAUI (.NET Multi-platform App UI) is Microsoft's open-source framework for building mobile and desktop apps with C# and XAML from one shared codebase. This guide walks through installing the workload, creating your first app from the template, and where to go next. It is aimed at developers who already know some C# or are learning it.

MAUIdotnet/maui · ★ 23.3k · MIT

Quick start

  1. 1Install the .NET SDK. Install the .NET SDK. The README does not specify a version, so confirm the requirement at dot.net/maui.
  2. 2Install the MAUI workload. If the maui template is missing, run dotnet workload install maui.
  3. 3Create a new app. Run dotnet new maui -n NewApp to generate a project from the template.
  4. 4Explore the sample option. Optionally add -sc to create a sample app that includes the Syncfusion Toolkit.
  5. 5Read the documentation. Use the official MAUI docs and the maui-samples repository to learn the framework.

What MAUI is and what it targets

MAUI is a cross-platform framework for creating mobile and desktop apps with C# and XAML. According to the project, you can build apps that run on Android, iOS, iPadOS, macOS, and Windows from a single shared codebase.

It is described as the evolution of Xamarin.Forms, extended beyond mobile into desktop apps for Windows and macOS.

  • Language: C# with XAML
  • Targets: Android, iOS, iPadOS, macOS, Windows
  • Licence: MIT

Install the prerequisites and the MAUI workload

You need the .NET SDK. The README does not state which version is required, so check the official documentation at dot.net/maui before you start.

If the maui template is not available when you try to create an app, install the MAUI workload with the command below.

dotnet workload install maui

Create your first app from the template

Run the command below to generate a new MAUI app named NewApp. Replace NewApp with any project name you prefer.

The README also mentions a sample app option. Adding -sc to the same command creates a sample app that includes the open-source Syncfusion Toolkit for .NET MAUI, which the README describes as having over 30 additional controls.

  • Sample app variant: dotnet new maui -n NewApp -sc
  • The README also links the .NET MAUI Community Toolkit and the MVVM Toolkit as helper libraries.
dotnet new maui -n NewApp

Explore the learning resources

The official documentation covers the framework in depth, and the maui-samples repository contains sample projects. The README also points to a Development Guide for people who want to work on MAUI itself.

For common questions, the project maintains a wiki FAQ, and news is posted on the .NET MAUI blog.

  • Documentation: docs.microsoft.com/dotnet/maui
  • Samples: github.com/dotnet/maui-samples
  • Development Guide: .github/DEVELOPMENT.md in the repository

Contribute or give feedback

The README lists trying things out, filing issues, joining design conversations, and making pull requests as ways to contribute. Proposals for MAUI changes are discussed in the repository's issues.

Contribution guidelines are in CONTRIBUTING and the code of conduct is in CODE-OF-CONDUCT, both under the .github folder.

What people use it for

  • Building a single C# app that runs on Android, iOS, and Windows
  • Creating a desktop app for Windows or macOS alongside a mobile app
  • Migrating an existing Xamarin.Forms app to a newer framework
  • Learning cross-platform app development in C#

Frequently asked questions

Is MAUI free to use?

The repository is licensed under MIT, which the README and project metadata state. The MIT licence permits use under its terms, so check the licence file in the repository for the full text.

How do I install MAUI?

Install the .NET SDK, then run dotnet workload install maui if the maui template is not available. You can then create an app with dotnet new maui -n NewApp.

What is the difference between MAUI and Xamarin.Forms?

The README describes MAUI as the evolution of Xamarin.Forms. It extends the approach beyond mobile Android and iOS to desktop apps for Windows and macOS.

Does MAUI support web apps?

No. The README describes MAUI as a framework for native device apps and does not cover web output.

What platforms can MAUI apps run on?

According to the README, MAUI apps can run on Android, iOS, iPadOS, macOS, and Windows from one codebase.

Can I use JavaScript or Dart with MAUI?

MAUI uses C# and XAML. If you prefer JavaScript or Dart, a framework such as React Native or Flutter may suit you better.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

MAUI suits C# developers who want to target phones and desktops from one codebase, especially teams already using Visual Studio and the .NET ecosystem, or those migrating Xamarin.Forms apps. If you need web apps, a platform outside Android, iOS, iPadOS, macOS, and Windows, or you prefer JavaScript or Dart, consider alternatives such as Flutter, React Native, Avalonia, or Uno Platform.

Install options & downloads