Nov 18, 2019. Mar 06, 2018.
Top 35 free apps for Windows 10 From backup to productivity tools, here’s the best of the best for Win10. Sometimes good things come in free packages. Great apps are built into Windows 10 Stay organized with Mail and Calendar or use Photos to get creative and turn your photos and videos into movies with the Video Editor. May 19, 2019.
-->This article provides the info you need to get started building desktop apps for Windows or updating existing desktop apps to adopt the latest experiences in Windows 10.
Platforms for desktop apps
There are four main platforms for building desktop apps for Windows PCs. Each platform provides an app model that defines the lifecycle of the app, a complete UI framework and set of UI controls that let you create desktop apps like Word, Excel, and Photoshop, and access to a comprehensive set of managed or native APIs for using Windows features. For an in-depth comparison of these platforms along with additional resources for each platform, see Choose your app platform.
Platform | Description | Docs and resources |
---|---|---|
Universal Windows Platform (UWP) | The leading-edge platform for Windows 10 apps and games. You can build UWP apps that exclusively use UWP controls and APIs, or you can use UWP controls and APIs in desktop apps that are built using one of the other platforms. | Get started API reference Samples |
C++/Win32 | The platform of choice for native Windows apps that require direct access to Windows and hardware. | Get started API reference Samples |
WPF | The established .NET-based platform for graphically-rich managed Windows apps with a XAML UI model. These apps can target .NET Core 3 or the full .NET Framework. | Get started API reference (.NET) Samples |
Windows Forms | A .NET-based platform that is designed for managed line-of-business apps with a lightweight UI model. These apps can target .NET Core 3 or the full .NET Framework. | Get started API reference (.NET) |
Note
On Windows 10, each these platforms also support using the Windows UI (WinUI) Library to create user interfaces. For more information about WinUI for desktop apps, see this section.
Update existing desktop apps for Windows 10
If you have an existing WPF, Windows Forms, or native Win32 desktop app, Windows 10 and the Universal Windows Platform (UWP) offer many features you can use to deliver a modern experience in your app. Most of these features are available as modular components that you can adopt in your app at your own pace without having to rewrite your app for a different platform.
Here are just a few of the features available to enhance your existing desktop apps:
- Use MSIX to package and deploy your desktop apps. MSIX is a modern Windows app package format that provides a universal packaging experience for all Windows apps. MSIX brings together the best aspects of MSI, .appx, App-V and ClickOnce installation technologies and is built to be safe, secure, and reliable.
- Integrate your desktop app with Windows 10 experiences by using package extensions. For example, point Start tiles to your app, make your app a share target, or send toast notifications from your app.
- Use XAML Islands to host UWP XAML controls in your desktop app. Many of the latest Windows 10 UI features are only available to UWP XAML controls.
For more information, see these articles.
Article | Description |
---|---|
Modernize desktop apps | Describes the latest Windows 10 and UWP development features you can use in any desktop app, including WPF, Windows Forms, and C++ Win32 apps. |
Tutorial: Modernize a WPF app | Follow step-by-step instructions to modernize an existing WPF line-of-business sample app by adding UWP Ink and calendar controls to the app and packaging it in an MSIX package. |
Windows 10 Apps Free
Create new desktop apps
Windows Store Apps
If you are creating a new desktop app for Windows, here are some resources to help get you started.
Article | Description |
---|---|
Choose your app platform | Provides an in-depth comparison of the main desktop app platforms and can help you choose the right platform for your needs. This article also provides useful links to docs for each platform. |
Visual Studio project templates for Windows apps | Describes the project and item templates that Visual Studio provides to help you build apps for Windows 10 devices by using C# or C++. |
Modernize desktop apps | Describes the latest Windows 10 and UWP development features you can use in any desktop app, including WPF, Windows Forms, and C++ Win32 apps. |
Features and technologies | Provides an overview of Windows features that are accessible via each of the main desktop app platforms and links to the related docs. |
Related documentation and technologies
Resource | Description |
---|---|
.NET Core 3.1 | Learn about the latest features of .NET Core 3.1, including enhancements for WPF and Windows Forms apps. |
.NET 5 | This article details what's included in .NET 5, which is the next release of .NET Core following 3.1. |
Desktop guide for WPF and .NET Core | Develop WPF apps that target .NET Core instead of the full .NET Framework. |
Azure | Extend the reach of your apps with Azure cloud services. |
Visual Studio | Learn how to use Visual Studio to develop apps and services. |
MSIX | Package and deploy any Windows app in a modern and universal packaging format. |
Windows AI | Use Windows AI to build intelligent solutions for complex problems in your apps. |
Windows Containers | Package your applications with their dependencies in fast, fully isolated Windows environments. |
Progressive Web Apps | Convert your web apps into Progressive Web Apps that can be distributed and run as UWP apps on Windows 10. |
Xamarin | Build cross-platform apps for Windows, Android, iOS, and macOS using .NET code and platform-specific user interfaces. |
Docs archive for Windows 8.x and earlier | Access archived documentation about building apps for Windows 8.x and earlier versions. |