It's just an anecdote, but I've had several FF issues on Windows, might be a timeline thing however.
Also, Nvidia is non-negotiable due to performance requirements and local deep learning experiments. I think Nvidia has gotten a lot better lately, even Sway (Wayland window manager) works these days. Incidentally I think the bad firefox framerates were only on i3 and not on Sway.
Then i attach the NVIDIA GPU to either a Windows VM or a NixOS one for gaming or "work".
It takes space and PCIe lanes to do so however, so I run SATA6 drives still :)
But if you can splurge, having multiple GPUs isn't unreasonable, as "Postgrest" docs says(0): Use a collection of sharp tools rather than building a big ball of mud.
0: https://docs.postgrest.org/en/v13/index.html#one-thing-well
I also wrote a little Python script that uses evdev to capture a numpad I bought and bind keys to different scripts that bind and unbind USB devices from my VMs for gaming.
I run sound though QEMU and pipewire and I get 45ms headphones to mic latency (measured with audacity) so slightly below 23ms latency. (I get essentially half doing the same measurement in Linux)
Virtualisation is a "out in the open" superpower.