Especially with the native compilation in newer versions. Wow! That was a night and day difference. Before, I tolerated it. Now, I very rarely wait for anything.
I love Emacs and it has been my number one tool for a long time. It is definitely more efficient with native compilation but there are still some issues. For example, get a large code base and obtain all occurrences of an expression in the whole code base. Every IDE is going to stutter on this but Emacs will pretty much lock up until this completes.
Have you tried any plugins using ripgrep? Searching for expressions in Neovim is pretty much instant using fzf-lua or any-jump, the latter is based on the emacs package https://github.com/jacktasia/dumb-jump