And indeed, many aspects of the X11 protocol involve almost gratuitous round-trip queries that can make high latency a killer. Often it's aspects of the GUI toolkits that create this problem- a pretty effect that seems cool & fast on a localbox can be sluggish on the network.
The indiscretions of the GUI toolkits cannot be blamed on the X11 protocol or server design. They could create server extensions for commonly used eye-candy effects (as Xorg is doing) but instead they choose to do more work in the client, which turns network performance into sludgy crap.