This was fine in the 90's when X protocol was lightweight. Back then we didn't have huge truecolour bitmaps, 100MB fonts, client-side rendered widgets, etc. Also, apps were being built to run on servers and have their display on your workstation, so developers were actually considering the X protocol bandwidth.
Today, running modern GTK or KDE apps over a forwarded X session is really not an option. Not only is the UI using orders of magnitude more data, but it's expecting to animate it with a local GPU, which doesn't get forwarded!
You're infinitely better off using Xpra instead. Xpra runs your app in a nested X server on the remote host, and then pipes its video and audio back to your thin client using modern audio/video codecs like HEVC/Opus, and it lets you scale the app, set the quality/framerate tradeoffs to achieve good latency and bandwidth.
Also, if your network isn't 100% reliable, you don't crash the application. You can power cycle your thin client, reconnect to the app later and it will be exactly how you left it.
If you absolutely must use X11 forwarding, use NXclient protocol 4 or later. It uses differential X protocol coding, compression, and caching to make the experience much more usable.