Create your first WinUI app

Build a two-page notes app with WinUI 3, XAML, and C#. See the finished experience first, then follow the full tutorial to create the interface, connect it to code, save local data, and navigate between pages.

WinUI getting started

In this tutorial, you learn how to:

  • Use XAML markup to define the user interface of the app.
  • Interact with XAML elements through C# code.
  • Save and load files from the local file system.
  • Create views and bind them to data.
  • Use navigation to move to and from pages in the app.
  • Use resources like documentation and sample apps to create your own app.
See full tutorial See code on GitHub
The completed WinUI notes app shows saved notes in an adaptive grid.
Why WinUI

A modern native framework for Windows apps

WinUI 3 brings Fluent Design, modern controls, and a XAML-based programming model to C# and C++ desktop apps through the Windows App SDK.
Modern Windows UI Build polished, responsive experiences with controls and styles designed for Windows. Explore WinUI 3 Built on the Windows App SDK Use modern Windows APIs and app capabilities through the recommended platform for new Windows desktop apps. Learn about the Windows App SDK A familiar C# and XAML workflow Build the interface with XAML, add behavior with C#, and work in Visual Studio with an integrated debugger. See the WinUI quickstart
What you'll need

Prepare your Windows development environment

Prepare these three things before you begin. Microsoft Learn contains the current setup and version details.
A Windows PC Use a supported Windows device where you can build and run the app locally. Explore Surface PCs Visual Studio 2026 Install Visual Studio with the WinUI application development workload. Download Visual Studio WinUI development setup Enable Developer Mode, create a packaged C# WinUI project, and confirm that the blank app runs. Set up your environment

Ready to build the notes app?

Follow the maintained tutorial on Microsoft Learn to create the project, add the interface and app logic, and verify the finished experience.

See full tutorial