TL;DR — Use exactly two substrates, in this order. 1. A live USB (€10, 15 minutes): the only rung that proves whether your Wi-Fi, GPU, trackpad, dock and external displays work, and it is non-destructive by construction [4]. 2. A full install on an external NVMe SSD (€90–150 all-in): a real, persistent, daily-drivable system that never writes to your internal disk — the honest "testing the waters" rung [5].
VMs (all free in 2026 [11]) validate your toolchain and nothing about drivers, suspend, battery or thermals. GPU passthrough is a hobby, not a migration step. A €175 used T480 is a fine second machine but a slow feedback loop [21].
The substrates, compared
| Substrate | Cost (EUR) | Setup | What it can prove | What it cannot prove |
|---|---|---|---|---|
| Live USB (Ventoy, multi-ISO) | €0–15 (a 64 GB USB 3.2 stick) | 15 min | Wi-Fi/Bluetooth, GPU + external displays, trackpad gestures, audio, brightness/function keys, dock and USB-C alt-mode, suspend-resume, fan behaviour — on this exact machine [4]. Also: which distro/DE you actually like, at ~zero switching cost [1] | Anything needing a reboot (proprietary GPU driver install), long-run battery life, thermal behaviour under sustained build load, real disk performance, whether your day-to-day workflow survives a week |
| Persistent live USB | same | +15 min | Keeps Wi-Fi credentials, installed packages and dotfiles between boots — turns a demo into a scratch environment | Same blind spots, plus: persistence support is distro-dependent under Ventoy and breaks on some Ubuntu/Mint ISO layouts [39]. USB flash endurance is not SSD endurance [7] |
| External-SSD full install | €85–150 (USB 3.2 Gen2) / €130–210 (USB4) | 1–2 h | Everything a live USB proves, plus: driver installs across reboots, kernel upgrades, battery life over days, thermals under real builds, whether your .NET + Node toolchain and homelab workflow actually land. Fully reversible — unplug and you are back on Windows | Peak storage throughput. Nothing else of consequence |
| VM on Windows (Hyper-V / VMware / VirtualBox) | €0 + ~16 GB RAM and 80 GB disk headroom [11] | 30–60 min | Toolchain: SDK installs, container runtime, shell, editor, build times (roughly), package management, muscle memory for the CLI | ⚠ Nothing about hardware. The guest sees virtual devices, so Wi-Fi, GPU, suspend, battery, lid/dock behaviour and thermals are all simulated away. Desktop-environment feel is also distorted by the hypervisor's graphics stack [12] |
| WSL2 + WSLg | €0 | 5 min | Linux userland, systemd, Docker, build tooling — at near-native CPU speed for most dev work [16] | It is not a desktop: WSLg ships individual GUI windows, not a GNOME/KDE session [16]. Kernel is a Microsoft fork (6.6.x in early 2026) you can't freely swap; GPU workloads ~33% slower and files under /mnt/c ~28% slower than native [15] |
| GPU passthrough (VFIO) | €0–300 (usually a second GPU) + 5–20 h | a weekend, optimistically | Near-bare-metal GPU performance in a guest — within 1–3% for sustained workloads [17] | ⚠ Still nothing about laptop drivers, suspend or thermals. Wrong tool for a migration trial |
| Spare / used laptop | €130–260 used ThinkPad [21]; €900–1400 new Linux-certified [26] | days (shipping) | A complete, independent Linux machine you can live on without risking the work box | ⚠ It proves Linux works on that laptop, not on your actual workstation. Feedback loop measured in days, and you now own two laptops |
| Cloud / remote Linux desktop | €5–30/month [31]; €0 on a homelab VM | 15 min | Toolchain and server-side workflow validation; a headless SSH box is genuinely useful for .NET/Node CI-shaped work | Desktop feel is a video codec. RDP/xrdp latency is in the wrong ballpark for interactive UI judgement [33]. Zero hardware signal |
1. Live USB — the highest value-per-effort rung, by a wide margin
Ventoy ⭐ 78k [2] inverts the usual flow: you install it once to a USB stick, then copy ISO files onto the partition and it builds the boot menu by scanning directories recursively [1]. No re-flashing per distro, and the stick stays usable as ordinary storage [1]. Version 1.1.11 (April 2026) covers 1300+ images and supports x86_64 UEFI Secure Boot as an install option [3][1]. Three ISOs on one stick — Fedora Workstation, Ubuntu LTS, and one KDE distro — is a 20-minute distro bake-off.
The 15-minute checklist, from a boot with no install: Wi-Fi connects and browses; native display resolution; external monitor via dock/USB-C; audio on speakers and headphone jack; brightness and volume keys; trackpad two-finger scroll and gestures; webcam; suspend on lid-close and resume — do it three times, watching for failures or heavy drain [4]. Then inxi -Fxz for a full hardware snapshot and lspci/lsusb to name anything that didn't come up [4]. Stress tools run fine from a live session for a thermal sanity check [38].
The one real gap: proprietary GPU drivers generally need a reboot to take effect, so a live session tests the open-source driver path only [36]. For an Intel/AMD iGPU laptop that is the production path; for an NVIDIA dGPU it is not.
2. External-SSD full install — the rung that actually answers the question
This is a normal, permanent Linux install that happens to live on a drive you can unplug. Nothing is written to the internal disk, no partition is resized, no Windows bootloader is touched — if you handle one pitfall (below).
Enclosure and bridge chip
The bridge chip, not the SSD, decides whether you get UASP, whether TRIM passes through, and whether SMART is readable [5]. Four families cover almost everything on sale, and all support UASP, TRIM and SMART on Linux:
| Bridge | Interface | Link speed | smartctl type | Enclosure price |
|---|---|---|---|---|
| JMicron JMS583 | USB 3.1 Gen 2 | 10 Gbps | sntjmicron | €25–60 |
| Realtek RTL9210/B | USB 3.1 Gen 2 | 10 Gbps | sntrealtek | |
| ASMedia ASM2362 | USB 3.1 Gen 2 | 10 Gbps | sntasmedia | |
| ASMedia ASM2364 | USB 3.2 Gen 2×2 | 20 Gbps | sntasmedia | €45–80 |
| ASMedia ASM2464PD | USB4 / Thunderbolt | 40 Gbps | sntasmedia | €70–120 [10] |
Bridge/speed/smartctl columns: [5]. UASP is mandatory in USB 3.1 and must be fully implemented, which makes USB 3.1+ enclosures the safer bet for TRIM [40].
Verify after first boot: lsusb -t must show Driver=uas (not usb-storage), and lsblk -Do NAME,TRAN,TYPE,DISC-GRAN,DISC-MAX must report a non-zero DISC-MAX [5]. ⚠ Many bridges do not advertise discard support, so the kernel disables TRIM even when the SSD supports it — the fix is a udev rule setting provisioning_mode="unmap" for that vendor/product ID [5][37]. Missing TRIM is a slow performance decay, not data loss [5]. Also skip ZFS on USB: duplicate serials, inconsistent SMART passthrough and USB dropouts degrade pools [5].
Endurance: SSD in an enclosure, never a USB stick
USB flash drives use NAND that would be rejected for SSD use and have wear-levelling that isn't comparable; a full install with daily writes wears them out [7]. Someone who ran exactly this experiment concluded: "Don't expect any longevity with USB sticks, the wear leveling and endurance is not on the level of proper SSD-s" — while noting Linux itself runs fine off USB, and you mainly feel it during package installs and updates [7]. A 1 TB M.2 NVMe drive (€60–90) in a €30 enclosure has the same TBW rating it would have inside the laptop.
⚠ The bootloader pitfall
On UEFI, only one ESP is active at a time, so installers frequently write the EFI boot files to the internal disk's ESP even when you point the bootloader at the USB target — after which removing the external drive can leave the machine at a GRUB error [6]. The clean workaround: from the live session, clear the esp flag on the internal ESP before installing and restore it afterwards, before rebooting [6]. Physically disconnecting the internal drive is the desktop equivalent [41]. Get this wrong and the whole "never touches Windows" promise evaporates.
Is it fast enough to compile on?
Yes, with a caveat about which number you look at. USB 3.2 Gen 2 external drives deliver 400–1000 MB/s, Thunderbolt 2500–3000 MB/s, and USB4 approaches 4000 MB/s, against up to 12,000 MB/s for a PCIe Gen 5 internal NVMe [8]. The sequential gap is large; the gap that matters for builds is latency, and external adds USB controller overhead and protocol translation on top of the PCIe path [9]. In practice a USB 3.2 Gen 2 or better external SSD "will feel virtually identical to an internal drive" for everyday work [9], and .NET/TypeScript builds are dominated by CPU and RAM, not by 1 GB/s versus 7 GB/s. Where you will notice it: a cold npm install or NuGet restore over a large tree, and first-boot package installs. If your machine has a Thunderbolt/USB4 port, an ASM2464PD enclosure removes even that objection [10].
3. VMs on Windows — good for the toolchain, useless for the verdict
| Option | Cost | Linux desktop fidelity | 3D / GPU in 2026 | Use it for |
|---|---|---|---|---|
| VMware Workstation Pro 25H2 | Free for commercial, educational and personal use; no licence key [11] | Best of the three; faster disk and graphics virtualization for Linux guests [12] | OpenGL 4.3 / DirectX 11 in guests — best Type-2 option [12] | Default pick if you want a VM at all |
| Hyper-V | Free (Windows Pro) | Enhanced Session Mode is xrdp over hv_sock — a remote-desktop session, not a local console [13]; video can be worse with it than without [14] | No official GPU acceleration for Linux guests [14] | Headless server VMs only |
| VirtualBox | Free | Adequate; widest host/guest coverage [12] | Experimental, capped at older OpenGL [12] | Throwaway experiments, Vagrant |
| WSL2 + WSLg | Free | Individual GUI windows in the Windows shell — explicitly not a desktop session [16] | Works, but ~33% slower on heavy GPU workloads than native Ubuntu [15] | Actual daily .NET/Node work while you evaluate |
Why a VM can't validate the migration. The guest is handed a virtual NIC, a virtual GPU, a virtual disk and a virtual power model. Every question that decides whether Linux is livable on your machine — does Wi-Fi work, does the dGPU switch, does suspend survive a lid close, does the battery last, does the fan spin up during a build, does the dock drive two monitors — is answered by the hypervisor, not by Linux. A VM tells you whether your toolchain ports. Nothing more.
4. GPU passthrough / VFIO — skip it for a migration trial
The payoff is real: a passed-through GPU runs within 1–3% of bare metal for sustained workloads [17]. The cost is the problem. Motherboards commonly group the GPU with other peripherals in one IOMMU group, so VFIO cannot detach it without an ACS override patch to split the groups [18]. Single-GPU passthrough is substantially harder still — the lone GPU often can't be isolated or reset, and the VM boots to a black screen or hangs during device reset [20]. The canonical Single-GPU-Passthrough guide ⭐ 1.7k opens with a disclaimer that it makes no guarantee the process will work on your hardware [19]. Comfortable setups need an iGPU for the host plus a discrete GPU for the guest [20].
Verdict: VFIO is an endgame for someone who has already moved to Linux and needs occasional Windows-with-GPU. It answers no question you have while deciding whether to move, and it costs a weekend to find that out.
5. Spare or second-hand laptop
Real eBay sold medians across seven markets, June 2026 [21]:
| Model | Sold median | Why |
|---|---|---|
| ThinkPad T430 | €96 | Budget pick; repairable, 16 GB max, Coreboot-moddable |
| ThinkPad T470 | €130 | DDR4, USB-C, Thunderbolt 3 |
| ThinkPad X270 | €148 | Last serviceable 12.5" |
| ThinkPad T480 | €175 | Best overall: quad-core, DDR4, TB3, dual storage bays, most liquid market (203+ sales/month) |
| X1 Carbon G4 | €259 | Thin and light, but soldered RAM |
⚠ Asking prices run €257–375 for a T480 against the €175 cleared median — anchor offers to the sold median [21]. ThinkPads are described as "the de facto reference hardware for desktop Linux", working out of the box on Fedora, Ubuntu and Arch [21].
Buying new with Linux support — worth knowing, not worth doing as a trial:
| Vendor | Entry price | Linux status |
|---|---|---|
| Lenovo ThinkPad | ~$1,400 (X1 Carbon Gen 13) [26] | Linux certification across the ThinkPad and ThinkStation portfolio [22]; 100+ configurations on Canonical's catalogue as of Feb 2026 [23], but usually sold with Windows in most markets [26] |
| Framework Laptop 13 Pro | €1,349 DIY, no RAM/storage/OS ($1,199 US) [25] | Ubuntu preinstalled option; Ubuntu-certified [28] |
| TUXEDO | €1,090 (InfinityBook Pro 15 Gen10) [26]; Aura 15 band from ~$900 [27] | TUXEDO OS or Ubuntu LTS preinstalled, five-year warranty, German build [26] |
| System76 | $1,299 (Pangolin) / $1,399 (Lemur Pro) [26] | Pop!_OS or Ubuntu, coreboot firmware [26] |
| Dell XPS Developer Edition | ~$2,050 (XPS 14) [26] | Ubuntu LTS preinstalled, drivers pushed upstream [26] |
6. Cloud / remote Linux desktop
Hosted Linux desktops start around $5/month [31]; Kasm Workspaces streams containerised desktops to a browser and is free for personal use up to 5 concurrent sessions [32]. With a homelab you already have, the marginal cost is €0 — a VM plus one of:
- SSH, headless — the highest-value option here. Validates your .NET/Node toolchain, containers and deployment story with zero desktop illusion.
- xrdp — RDP into a Linux session [42]. Works; latency is in the wrong ballpark for judging interactive UI feel [33].
- Sunshine ⭐ 40k [44] + Moonlight ⭐ 18k [45] — hardware-encoded 4K/60 at sub-30 ms, self-hosted on any GPU with an encoder [33]. Closest thing to a real desktop over the wire; pair with Tailscale to skip port forwarding.
- NoMachine — free for non-commercial use, proprietary [34].
All of them share the same blind spot as VMs, plus network latency. Use a remote box to answer "does my toolchain work on Linux", never "do I want to use Linux".
7. Checking compatibility before you buy
- Linux Hardware Database — crowdsourced probes per laptop model showing which components work and on which kernels [30][4]. Check a candidate machine here before buying [4].
- hw-probe ⭐ 918 — run it from the live session to upload a probe of your own machine and diff it against the database [29]. Packaged as
hw-probeon Debian/Ubuntu, Fedora and Arch [35]. - Ubuntu Certified hardware — Canonical's verified-device list [24]. From Ubuntu 26.10, Settings > System > About has a "check if this computer is Ubuntu Certified" row backed by
com.ubuntu.hwctl, reporting certified / certified-for-another-release / similar-to-a-certified-model / not certified [28]. - ArchWiki per-model pages — the best per-laptop Linux documentation available, useful regardless of distro [4][43].
Recommendation
- Ventoy stick, this week (€10, 15 min). Three ISOs, the hardware checklist above, then
hw-probeto file a permanent record. Cheapest possible answer to "will Linux even run on this machine", and it settles the distro question at the same time [1][4]. - Keep using WSL2 in parallel (€0). It is where your .NET and Node toolchain gets exercised daily while you decide, at near-native CPU speed [16] — just don't mistake it for the desktop [15].
- External NVMe SSD install, if step 1 looks clean (€90–150, 1–2 h). Realtek RTL9210 or ASMedia ASM2362 enclosure, 1 TB NVMe, ESP flag cleared during install [6], UASP and TRIM verified after [5]. Live on it for a month. If it fails you unplug a cable; if it succeeds you clone it to the internal drive.
Everything else is optional. A €175 T480 is a reasonable insurance policy if you want a machine you can wipe freely [21], and a homelab VM over SSH is a good place to keep server-shaped work. A desktop VM on Windows and GPU passthrough both answer questions you are not asking.