← All Guides
💻

ISO Builder Guide

Create bootable Windows DVDs, ISOs, and USB drives using built-in PowerShell commands. No third-party tools needed.

Everything below uses PowerShell commands that ship with Windows — no additional software required (the custom-ISO section is the one exception; it needs the free Windows ADK).

Get the Windows 11 ISO

The easiest way to get an official Windows 11 ISO is through Microsoft’s Media Creation Tool or direct download.

Option 1: Media Creation Tool — Download and run the Media Creation Tool. It will guide you through creating a bootable USB drive or downloading an ISO file directly.

Option 2: Direct ISO Download — On the same page, scroll down to “Download Windows 11 Disk Image (ISO)” to download the ISO directly without the tool.

Download Windows 11

Pro Tip

If you’re on a non-Windows device or want to bypass the Media Creation Tool, use browser developer tools to change your User-Agent to a non-Windows OS to access direct ISO downloads.

Create a Bootable USB with PowerShell

No extra software needed! Use these built-in PowerShell commands to create a bootable USB drive.

Warning

This will erase all data on the USB drive. Make sure you’ve backed up any important files and selected the correct disk number!

1

Open PowerShell as Administrator

Right-click the Start button and select “Windows Terminal (Admin)” or “PowerShell (Admin)”.

2

Identify Your USB Drive

List all disks to find your USB drive number:

PowerShell
Get-Disk | Format-Table -AutoSize

Note the disk number of your USB drive (usually Disk 1 or higher).

3

Format and Prepare the USB Drive

Replace X with your USB disk number:

PowerShell
# Clear and initialize the disk
Clear-Disk -Number X -RemoveData -Confirm:$false
Initialize-Disk -Number X -PartitionStyle GPT
# Create partition and format as FAT32 for UEFI boot
# Note: Windows cannot format FAT32 volumes larger than 32GB.
# On a 64GB+ USB drive, use -Size 32GB instead of -UseMaximumSize.
$usbPartition = New-Partition -DiskNumber X -UseMaximumSize -AssignDriveLetter
Format-Volume -DriveLetter $usbPartition.DriveLetter -FileSystem FAT32 -NewFileSystemLabel "WIN11USB"
4

Mount the ISO and Copy Files

Mount the Windows ISO and copy all files to the USB drive:

PowerShell
# Mount the ISO (update path to your ISO location)
$isoPath = "C:\Path\To\Windows11.iso"
$mountResult = Mount-DiskImage -ImagePath $isoPath -PassThru
$isoDriveLetter = ($mountResult | Get-Volume).DriveLetter
# Copy all files to the USB drive letter captured in Step 3
$usbDrive = "$($usbPartition.DriveLetter):\"
Copy-Item -Path "${isoDriveLetter}:\*" -Destination $usbDrive -Recurse -Force
# Dismount the ISO when done
Dismount-DiskImage -ImagePath $isoPath

Note on Large Files (install.wim)

FAT32 has a 4GB file size limit. If install.wim exceeds 4GB, you’ll need to split it using DISM or use NTFS (may not work with all UEFI systems). See the next section.

Handling Large install.wim Files

Windows 11 ISOs often have an install.wim larger than 4GB. Use DISM to split it for FAT32 compatibility:

PowerShell (Admin)
# D: = your mounted ISO drive letter, E: = your USB drive letter (adjust both to match your system)
# First, copy everything EXCEPT install.wim from the mounted ISO
robocopy D:\ E:\ /E /XF install.wim
# Split the install.wim into smaller .swm files (3800MB chunks)
Dism /Split-Image /ImageFile:D:\sources\install.wim /SWMFile:E:\sources\install.swm /FileSize:3800

This creates install.swm, install2.swm, etc. Windows Setup automatically recognizes and uses split images.

Adding an Answer File for Automated Installation

An answer file (autounattend.xml) automates Windows installation by providing pre-configured answers to setup prompts.

Generate Answer File

Where to place the answer file: copy your autounattend.xml file to the root of the USB drive. Windows Setup automatically detects and uses it.

USB drive layout
E:\ (USB Drive)
├── autounattend.xml ← Place here
├── boot/
├── efi/
├── sources/
│ ├── boot.wim
│ ├── install.wim (or .swm files)
│ └── ...
├── support/
└── setup.exe
PowerShell
# Copy answer file to USB root (replace paths as needed)
Copy-Item -Path "C:\Users\YourName\Downloads\autounattend.xml" -Destination "E:\"

Answer File Search Order

Windows Setup checks these locations in order: removable media root, \Windows\Panther folder, %WINDIR%\Panther\Unattend folder, then %SYSTEMDRIVE%. The USB root is typically the best choice for installation media.

Create a Custom ISO with Answer File

If you want to bake your answer file directly into an ISO for DVD burning or virtual machine use, you can use the Windows ADK’s oscdimg tool.

Install Windows ADK (if not already installed) — Download the Windows Assessment and Deployment Kit from Microsoft. You only need the “Deployment Tools” feature.

Windows ADK Download
PowerShell (Admin)
# Set up paths
$sourceIso = "C:\Path\To\Windows11.iso"
$workFolder = "C:\ISO_Work"
$answerFile = "C:\Path\To\autounattend.xml"
$outputIso = "C:\Output\Windows11_Custom.iso"
# Create work folder and extract ISO contents
New-Item -ItemType Directory -Path $workFolder -Force
$mount = Mount-DiskImage -ImagePath $sourceIso -PassThru
$driveLetter = ($mount | Get-Volume).DriveLetter
Copy-Item -Path "${driveLetter}:\*" -Destination $workFolder -Recurse -Force
# Add answer file to root
Copy-Item -Path $answerFile -Destination $workFolder
# Create new ISO using oscdimg (ADK required)
$oscdimg = "C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\amd64\Oscdimg\oscdimg.exe"
$etfsBoot = "$workFolder\boot\etfsboot.com"
$bootFile = "$workFolder\efi\microsoft\boot\efisys.bin"
# Boot paths are quoted so this works even when paths contain spaces
$bootData = "2#p0,e,b`"$etfsBoot`"#pEF,e,b`"$bootFile`""
& $oscdimg -m -o -u2 -udfver102 "-bootdata:$bootData" $workFolder $outputIso
# Cleanup
Dismount-DiskImage -ImagePath $sourceIso

Alternative ISO/USB Tools

While PowerShell handles most scenarios, these third-party tools offer additional features or simpler interfaces:

  • [Rufus](https://rufus.ie/) — The most popular USB creation tool. Supports GPT/MBR, UEFI/BIOS, and has Windows 11 TPM/Secure Boot bypass options. Free & open source.
  • [Ventoy](https://www.ventoy.net/) — Create a multi-boot USB. Just copy ISO files to the drive — no reformatting needed for each new ISO. Free & open source.
  • [balenaEtcher](https://etcher.balena.io/) — Simple, cross-platform tool. Great for Linux ISOs and Raspberry Pi images. Free & open source.
  • [ImgBurn](https://www.imgburn.com/) — Classic DVD/Blu-ray burning tool. Create ISOs from folders, burn ISOs to disc, and verify burns. Free.
  • [AnyBurn](https://www.anyburn.com/) — Lightweight burning software. Create bootable USBs, burn/rip CDs/DVDs, edit ISO files. Free for personal use.
  • [UltraISO](https://www.ultraiso.com/) — Professional ISO editing tool. Create, edit, convert, and burn ISO files. Paid (trial available).

Quick Reference

Useful PowerShell commands for working with disks and images:

PowerShell Quick Reference
# List all disks
Get-Disk
# List mounted ISO/VHD images
Get-DiskImage
# Mount an ISO
Mount-DiskImage -ImagePath "C:\Path\To\Image.iso"
# Dismount an ISO
Dismount-DiskImage -ImagePath "C:\Path\To\Image.iso"
# Get USB drives specifically
Get-Disk | Where-Object BusType -eq 'USB'
# Check WIM file info
Get-WindowsImage -ImagePath "D:\sources\install.wim"