I agree about all of these things. But there's one thing vscode has and emacs doesn't that has recently (as of a job change) caused me to switch, because it ended up trumping everything else:
* works decently well on Windows
Emacs is just so so so painfully slow on Windows. And running the Linux version in WSL leaves me stuck in 16-color terminal mode because (at least as of Windows 10) getting an X server working on Windows without creating a security problem for yourself is, to put it mildly, easier said than done.
Sorry about being stuck on Windows 10, but Windows 11 has WSLg[0], which gives you a reasonable X server out of the box. I liked X410, but WSLg is seamless. When combined with no fuss CUDA support and great docker integration, WSL2 on Windows 11 is almost a better Linux than Linux. Then you run into an edge case, spend hours digging at it, and leave curled up into a fetal position.
I use mobaxterm on windows which has an X terminal builtin (IIRC). I've never actually had to use it - I just the the ssh/rdp/scp stuff. But its free to try it...
Exempt its installation folder (and any folders where you keep a large number of Elisp files) from Windows Defender and other antivirus software. Does that help?
The issue is fairly well documented. In a nutshell, it's that the Windows kernel has rather high-latency disk I/O, and emacs plugins tend to spam the disk.