I don't try to do everything inside emacs, probably to a fault. I don't even bother with, say, autocomplete, or on-the-fly syntax checking (I do use syntax highlighting!), I just run linters/formatters/unit tests externally regularly while working on code. I'm happy to defer terminal interaction to a real terminal emulator, although sometimes I use vterm from emacs. Oh, I will use magit though. Magit is awesome!
Don't get me wrong, I like VSCode in some ways, and I think it's a great tool. It's far more accessible in a lot of ways. But it's not really for me. I don't find it to be transparent. Things break often, probably because it's a less mature tool, but understanding why things break when they do tends to be frustrating and fraught by comparison. And it lacks anything remotely comparable to emacs buffers (at least last I checked: if you know of anything that does this in VSCode, I'd be happy to check it out!).
And to be clear, I know these arguments for emacs aren't super compelling. They're more expressions of taste and aesthetic preferences than anything else. Which is fine, we can all have different tastes and aesthetic preferences :)