But some 10 years ago clients started doing client rendering and just sending bitmaps to the display server. Mostly that meant higher bandwidth and fewer round-trips. Whether that is good or bad depends on the clients and the environment.
Actually they started doing that back in the 90s, the X primitives were already very outdated when KDE/Gnome launched in 1998/1999. And this is really the core issue, if you want a modern looking Linux with gradients, transparency, animations, anti-aliasing and various pretty effects you let a graphics toolkit do the job and hand X a bitmap. And they run roughly as bad under remote X as under VNC, because under those circumstances they do pretty much the same thing.
The applications that do work well using remote X are the same applications that shy away from the "render bitmaps" strategy and with their primitives they look... primitive. Functional sure, but as a local desktop application they look like a legacy tool that hasn't recieved any love in the last 20 years. And you can't fix that without turning them into bitmap-pushers, which is of course met with the same level of scorn as replacing X.
It seems to me that wayland initially was infested by the type of developers that think that all they need is direct access to video memory, and for remote applications all you need is VNC-style full-desktop remote. Of course people who use remote X think that that is a myopic and arrogant view. It seems that wayland has gained some developers in the past few years who have more common sense
There's actually not a lot of sense in trying to make one system that'll work both for graphics hooked up over a >15GB/s x16 PCIe 3.0 link with nanosecond latency and a system with 1/1000th the bandwidth and 1000x the latency. Applications will tend to work well in just one of those two scenarios no matter what kind of protocol you wrap it in, even if it's theoretically network transparent. If it wasn't being used, it wouldn't be the fastest interlink we have in modern computers.
I'm one of those that hopes remote X dies in a fire so we can have a 21st century Linux desktop. What remote X does today would be better done using web interfaces or dedicated client-server software that would transfer only the data necessary, instead of trying to keep the graphics so simple it's easier to describe them as lines and boxes and text than to actually send the pixels. Because that's what you must do to make the X model "work".