Edit

Plan your Windows app

Two decisions shape everything that follows when you build a Windows app: which UI framework you use, and how you distribute the app. Make them before you create a project, because changing them later costs time.

Choose a framework

If you want to... Consider
Build a new app with the latest Windows design and features WinUI
Build a new app with WPF or Windows Forms skills you already have WPF or Windows Forms. You can add Windows features later with the Windows App SDK.
Extend an existing WPF or Windows Forms app Keep your framework, and add Windows features with the Windows App SDK.
Share most of your code with other platforms A cross-platform framework, such as .NET MAUI or React Native for Windows.

For more criteria, such as your team's existing skills and whether you need Windows-specific APIs, see the Windows developer FAQ and Choose tools and frameworks for your Windows app.

Choose how to distribute your app

You don't have to publish through the Microsoft Store. You can:

  • Publish through the Microsoft Store for discovery, a trusted install experience, free signing for MSIX packages, and automatic updates.
  • Distribute your app yourself from your own website, GitHub Releases, or winget. You sign your app and deliver updates.

Your distribution channel decides how you sign your app, how updates reach users, and what accounts you need. Compare the options in Choose a distribution path for your Windows app.

If you choose the Microsoft Store, set up your developer account early, because verification can take several days. Once your account is ready, reserve your app's name.

Before building your Store package, make sure your package manifest uses your app's identity values from the Product identity page in Partner Center. See View app identity details. For the full path from a finished build to a published app, see Your path from idea to the Microsoft Store.

Next steps