A modern Windows To Go deployment wizard built with WinUI. Guides you step by step through creating a portable Windows workspace on an external drive.
- 5-step guided wizard — The wizard will guide you step by step through the process of selecting an image, configuring disks, adjusting deployment settings, and enabling advanced settings, and then provide a summary page for you to confirm all deployment settings.
- WIM / ESD images support — WTGWizard supports both wim and esd format of Windows images.
- Two installation type — WTGWizard provides you both clean install and install to partition. The former will wipe and recreate disk layout on selected disk, while the latter allows you to install Windows into an existing partition.
- Driver integration — Integrate drivers you need into Windows.
- Answer file handling — Use a your own answer file to customize Windows installation.
- Deployment dashboard — A simple but powerful task page allows to track deployment progress, with a built-in disk performance monitor to show disk performance metrics.
- Localization — WTGWizard supports English and Simplified Chinese for now.
- System: Windows 10 version 2004 (Build 19041) or later, x64. Best experience on Windows 11.
- Runtimes:
- For
-SCDversion: All required runtimes and frameworks are bundled; nothing extra needs to be installed. - For
-FDDversion: Both .NET 10.0 Desktop Runtime x64 and Windows App SDK 2.4.0 x64 is reqiured to be installed beforehand.
- For
- Elevated privilege: The app requests elevation for disk operations, DISM operations, etc.
- An external hard drive or a USB drive is needed.
- WTGWizard does not support creating a Windows To Go drive with MBR (Master Boot Record) partition style though it is technically feasible. Only GPT partition style is supported.
- WTGWizard dose not support creating a Windows To Go drive compatible with Legacy boot manager though it is technically feasible. Only UEFI is supported.
- Download the latest release ZIP from the Releases page. Choose
WTGWizard-vX.Y.Z-x64-FDD.ziporWTGWizard-vX.Y.Z-x64-SCD.zip. - Install the required runtimes before running the app. See Requirements
- Extract the archive and run
WTGWizard.exe. The launcher automatically locates the app (WTGWizard-vX.Y.Z\WTGWizard.Main.exe) and starts it. The program will request for elevation. - Follow the wizard to complete every setup page, confirm your configurations, then start the deployment. It will take some time to finish the setup affected by disk performance.
WTGWizard-vX.Y.Z-x64-SCD.zip
├── WTGWizard.exe # Launcher — locates and starts the app
└── WTGWizard-vX.Y.Z\ # Application
├── WTGWizard.Main.exe
└── ...
Warning: Deployment erases the target disk or partition. Verify your selections carefully before starting.
Requirements:
- .NET 10 SDK x64 (baseline
10.0.400viaglobal.json,rollForward: latestMinorallows a later10.0.x) - Windows ADK 10.0.26100 (bundled with Visual Studio 2022 or the standalone Windows ADK)
- Visual Studio 2022 or Build Tools with the Desktop development with C++ workload (builds the launcher,
src/WTGWizard.Launcher)
dotnet build WTGWizard.slnxPublish a release build:
# Single mode per run (FDD or SCD); the CI/Release pipeline builds both via GitHub Actions matrix
./BuildArtifacts.ps1 -BuildType FDD -MainVer 1.0.0 -WorkerVer 1.0.0 -ZipTag v1.0.0
./BuildArtifacts.ps1 -BuildType SCD -MainVer 1.0.0 -WorkerVer 1.0.0 -ZipTag v1.0.0Or use the PublishProfile directly (the single source of publish parameters is Properties/PublishProfiles/*.pubxml):
dotnet publish src/WTGWizard.Main -p:PublishProfile=SCD-x64
dotnet publish src/WTGWizard.Main -p:PublishProfile=FDD-x64 -p:PublishDir=build\publish\FDDWTGWizard is split into a Main process (WinUI 3 UI) and an out-of-process Worker child process communicating over a NamedPipe IPC protocol.
src/
├── WTGWizard.Main/ # WinUI 3 app (UI, ViewModels, pages)
├── WTGWizard.Main.DeploymentCore/ # Deployment engine (7-step pipeline, orchestrator).
├── WTGWizard.Main.Language/ # Localization resources.
├── WTGWizard.Shared.Services/ # Disk I/O, WIM, logging.
├── WTGWizard.Shared.Common/ # NamedPipe IPC protocol
└── WTGWizard.Worker/ # Out-of-process worker (handle deployment tasks).
Deployment pipeline: Create Disk Layout/Format Partition → Extract Image → Integrate Drivers → Import Answer File → Apply System Settings → Create Boot Files → Final Cleanup.
The orchestrator publishes task updates over an observable stream; the UI renders task cards and terminal output without coupling to the worker processes.
- Pushing a tag
v*triggers the GitHub Actions release workflow. - Tags containing
preview(e.g.v1.0.0-preview1) are published as Pre-releases. - The Main version comes from the tag; the Worker version is maintained independently.
- The product version automatically includes the full 40-character commit hash (e.g.
1.0.0+<hash>).
UI strings are stored in .resx files (Lang.resx for English, Lang.zh-CN.resx for Simplified Chinese) with dot-separated key names, exposed through a strongly-typed designer class.
This project is licensed under the GNU General Public License v3.0. Please use under GPLv3 restrictions. See LICENSE.
Third-party component licenses are listed in THIRD-PARTY-NOTICES.
WTGWizard is an independent, open-source project and is not affiliated with, endorsed by, or sponsored by Microsoft. Windows, Microsoft, Windows To Go and the Windows logos are trademarks or registered trademarks of Microsoft Corporation. The application icon contains a conceptual, recolored re-interpretation of the Windows flag motif and is provided for identification purposes only.
WTGWizard used/referred these projects below. Thanks for their excellent works!
- wimlib / ManagedWimLib — WIM related operations, core component of WTGWizard.
- Vanara — Solid foundation of DiskIOService implementation.
- Windows CommunityToolkit — MVVM and WinUI controls.
- Serilog — App logging service.
- Starward — One solution with multi-project architecture, localization implementation and Launcher project. Starward is a very beautiful and easy-to-use HoYoverse game launcher with a set of enhancements.
- TaskMonitor — The calculation formula of disk performance monitor's average response time. TaskMonitor is a young but powerful system performance monitor allowing you to monitor system performance from taskbar.
USE AT YOUR OWN RISKS. WTGWizard can performs destructive disk operations and the authors are not responsible for any accidental data loss or damage.

