How to Create Windows To Go (WTG) Drive Manually

Created On: 2020-07-06 Updated On: 2020-07-06

Windows To Go is a Windows system that runs on USB flash drive or USB SSD hard drive. It can be used to boot the same Windows installation from USB drive on different computers.

Windows To Go can be created by some tools, including Windows To Go Creator wizard in Windows 10 Pro/Education/Enterprise, rufus, WinToUSB, AOMEI Partition Assistant. But those tools are not transparent and may not be flexible enough for power users. In fact, Windows To Go drive can be prepared quite easily using Windows command line tools, specifically dism and bcdboot.

Before I start, note that Windows To Go requires good random read/write IOPS to perform well enough for daily use. You may use a certified Windows To Go flash drive, or use an SSD hard drive in a USB 3.1 case. Those will have the desired performance. A regular USB 3.1 flash drive or any external SATA hard drive will not be fast enough to host WTG (or a regular windows 10 installation).

In the following post, I will focus on creating Windows 10 WTG on a new USB M.2 SSD hard drive, with UEFI boot and GPT partition table.

Extract install.wim image is best done in Windows, run bcdboot requires Windows. So it's recommended to prepare the disk in Windows 10 environment.

Now we can plug the new USB drive and start preparing our windows to go drive.

Partition the new USB drive

Create GPT partition table on the new drive.

Create at least two partitions:

  • one NTFS partition to host Windows files. This partition should have a minimum size of 50GiB just for Windows. If you want to install any apps, I recommend a size of 100GiB or more.
  • one FAT32 EFI partition. To host EFI boot files. size 100MiB to 256MiB.

You may create partition and format the partition using Windows 10 GUI disk management GUI tools. To mark the FAT32 partition as EFI partition, run diskpart in admin cmd.exe, then

select disk N
select partition N
set id=c12a7328-f81f-11d2-ba4b-00a0c93ec93b
assign letter=S
exit

That ID is a pre-assigned partition ID for EFI, see set id help.

Rest disk space can be used to create any partition you like.

Unpack install.wim to NTFS partition

You may download Windows 10 ISO file from Microsoft website. We need the sources\install.wim from the ISO file.

Suppose

  • Windows 10 ISO CD-ROM drive is X:
  • external drive NTFS partition is W:
  • external drive EFI partition is S:. Don't worry if EFI partition is not assigned a drive letter. I will instruct you before we use this partition.

Each ISO's install.wim file contains multiple Windows 10 editions. After downloading the ISO, you may check versions included in the ISO by:

In admin cmd.exe,

dism /Get-WimInfo /WimFile:X:\sources\install.wim

Suppose you want to install the edition at index 3 as WTG:

Unpack the image to NTFS partition W:\

dism /Apply-Image /ImageFile:X:\sources\install.wim /Index:3 /ApplyDir:W:\

This took a few minutes on modern M.2 SSD. It will take near an hour on regular USB 3.1 flash drive.

Create UEFI boot entry

Make sure EFI partition on the new drive is assigned a letter. If not, you may assign a letter using diskpart.

In admin cmd.exe,

diskpart
select disk N
select partition N
assign letter=S
exit

In admin cmd.exe,

This will create S:\Efi\Microsoft\Boot, S:\Efi\Boot\

W:\Windows\System32\bcdboot W:\Windows /f UEFI /s S:

Test boot from the new drive

  • Config BIOS to allow boot from UEFI USB hard drive and USB key.
  • Select to boot from your new drive. You should see Windows To Go boot for the first time. It may reboot after some initial configure, make sure to boot from this device again to continue configuration and initial Windows 10 setup. After the first time configuration, you will boot directly into Windows 10 login screen.
  • When you plug the drive to a new computer, the first time boot may require a auto reboot, then it will boot directly into Windows 10 login screen.
  • All you apps and documents will go with you. That is the point of Windows To Go.

Side notes

  • Windows To Go can be used on macbook and macbook pro. You need to download drivers from macOS bootcamp application, and transfer those to USB flash drive or somewhere you can access in the WTG environment. You also need adapter and external USB keyboard/mouse to install drivers for macbook hardware, since macbook touchpad driver is not included in Windows 10. Once Windows To Go boots, Run BootCamp\Setup.exe to install drivers for macbook.
Is this post helpful?