Introduction to Windows on Arm - Port a .NET application to natively support Arm-based processors

Visual Studio
Windows 11

This module describes how Windows operating system supports devices powered by Arm processors and how to add a build configuration for Arm64 architecture to improve the experience of using your Windows application on Arm-based devices. This training will also cover testing, debugging, and troubleshooting the new Arm-based version of your Windows app.

Learning objectives

By the end of this module, you'll be able to:

  • Describe Windows on Arm.
  • Understand why providing an Arm-native build for Windows applications is important.
  • Configure an Arm64 build using Visual Studio.
  • Test an Arm64 build on an Arm virtual machine.
  • Debug an Arm64 build using Visual Studio remote debugging.
  • Troubleshoot common issues experienced with Arm builds.


Before starting this module, you should have the following prerequisite tooling, knowledge and experience:

  • Familiarity with Visual Studio and compiling source code at a beginner level.
  • Visual Studio 2022 installed with the .NET desktop development workload and .NET 6.0 SDK.
  • Familiarity with processor architectures such as Intel-based x86, x64 as well as Arm32 and Arm64 at a beginner level.
  • Have an Azure subscription and beginner-level familiarity with creating and connecting to a virtual machine. (Optional for testing).