DEV Community

Aaron LaBeau
Aaron LaBeau

Posted on

Hot Restart for iOS is not included in Visual Studio 2026: What .NET MAUI Developers Need to Know

If you're a .NET MAUI developer who's been enjoying the convenience of Hot Restart for iOS development on Windows, I have some bad news: this beloved feature didn't make it into Visual Studio 2026. For several developers, Hot Restart was one of the standout features that made mobile development accessible without the hassle of maintaining Mac hardware. Its removal has left many in the community frustrated and searching for alternatives.

What is Hot Restart?

Hot Restart was a game-changing feature that allowed developers to deploy and test .NET MAUI (and previously Xamarin) iOS apps directly to a physical iOS device from a Windows machine - no Mac required. Instead of going through the full build cycle that typically requires a Mac build host, Hot Restart streamlined the deployment process by pushing only code changes and resources to an existing app bundle already installed on your connected iPhone or iPad.

For Windows-based developers, this was huge. You could:

  • Test your app on real iOS hardware without owning a Mac
  • Avoid the complexity of setting up and maintaining a Mac build environment
  • Quickly iterate on your UI and business logic during development
  • Test hardware features like the camera, Bluetooth, and WiFi on actual devices

The traditional iOS development workflow requires you to pair Visual Studio with a Mac, ensure Xcode and all build tools are up to date, and maintain network connectivity between your Windows development machine and your Mac. Hot Restart eliminated all of that friction for day-to-day development tasks.

How React Native with Expo Go Works

If you're familiar with React Native development, Hot Restart worked similarly to Expo Go. Expo Go lets React Native developers test their apps on iOS and Android devices without owning a Mac or going through the full native build process. You simply scan a QR code, and your app loads on your device through the Expo Go client app.

However, both solutions share a critical limitation: they only work with certain types of apps. Expo Go can't handle third-party libraries that require custom native code - the moment you need to add a native module or framework that isn't already bundled with Expo, you have to switch to a development build, which requires the full native toolchain (including a Mac for iOS).

Hot Restart had a similar constraint. According to the official documentation, it didn't support static iOS libraries, certain frameworks, or XCFrameworks containing static libraries. This limitation is what ultimately led to its demise.

Why Did Microsoft Remove Hot Restart?

The short answer: XCFramework compatibility. As .NET MAUI matured, the team adopted XCFramework as the standard for packaging native iOS dependencies. The problem? Building with XCFramework requires macOS-specific build tools that simply aren't available on Windows.

In a GitHub discussion about the removal, developers pieced together the technical reasons. One contributor noted that "Building with XCFramework has never been supported in HotRestart due to the fact that some build tools are only available on MacOS." This architectural incompatibility meant Hot Restart couldn't evolve alongside the platform.

There's also an operational angle. Gerald Versluis, a Microsoft engineer, commented on a LinkedIn post about the feature's removal:

"I'm glad the experience was great for you! Unfortunately I don't think that many people were using it and the maintenance effort on it was pretty high. So that's not a great combination."

In other words, Hot Restart was expensive to maintain for what Microsoft perceived as a relatively small user base. The team had to make a tough call between continuing to support a feature with significant technical debt or focusing resources elsewhere.

Could Hot Restart have worked with XCFramework? Theoretically, yes - if Microsoft pre-built and packaged XCFrameworks with each .NET MAUI release. But as developers in the GitHub thread acknowledged, this would create a substantial maintenance burden and potentially introduce versioning and compatibility headaches.

What Does This Mean for .NET MAUI Developers?

If you're currently using Hot Restart, you have a few options:

  1. Stay on Visual Studio 2022 - Hot Restart is fully supported in Visual Studio 2022 (version 17.3 and later). If this feature is critical to your workflow, you can simply avoid upgrading to Visual Studio 2026 for now. Several developers in the community have stated they're doing exactly this. My gut feeling is that eventually a XCode release will break this feature, but until then you can continue to use Hot Restart.

  2. Invest in Mac hardware - The traditional "Pair to Mac" workflow is now the standard approach for iOS development in Visual Studio 2026. You'll need a Mac on your network (or use a cloud-based Mac service) to build and deploy iOS apps.

  3. Consider cloud Mac solutions - If purchasing Mac hardware isn't feasible, services like MacStadium or MacinCloud offer cloud-hosted Mac build agents that can integrate with your Visual Studio workflow.

  4. Use a Mac with JetBrains Rider - JetBrains Rider is a cross-platform IDE that supports .NET MAUI development and runs on the Mac. It allows you to develop on a Mac and deploy to iOS devices using Hot Restart. While this is not a perfect solution, it is a solution that will allow you to continue testing iOS apps with Maui. This is what I do - when I need to test MacOS and iOS I use a Mac with Rider. When I want to test PC I use Windows with Visual Studio 2022/2026.

The bottom line is this: if you want to continue developing .NET MAUI apps for iOS, having access to macOS is no longer optional - it's a requirement. The brief window where Windows-only developers could build for iOS without Apple hardware has closed.

Final Thoughts

The removal of Hot Restart is disappointing for developers who relied on it, especially those working in resource-constrained environments or teams without dedicated Mac hardware. While Microsoft's reasoning makes sense from a technical and resource perspective, it does raise the barrier to entry for .NET MAUI development. When I worked at EY this was pretty amazing for developers because we didn't need to have two laptops to do development - one for Windows and one for Mac.

If Hot Restart was a critical part of your workflow, I'd encourage you to make your voice heard in the upcoming .NET MAUI community surveys. Microsoft has indicated they're open to feedback, and if enough developers demonstrate the value of this feature, there's a chance - however slim - that a solution could be reconsidered.

For now, though, if you're serious about .NET MAUI development for iOS, it's time to add a Mac to your development toolkit.


Sources

Top comments (0)