x2go is great. I desperately want to see VirtualGL integration in it though so you can run egl compositors with local rendering (since GPUs on VMs are still uncommon).
The other thing RDP is amazing at that I haven't seen Linux do well at all is resuming local sessions remotely and vice versa - with RDP it feels integrated, with x2go you're back to just transferring frames.
X2GO is extremely reliable for me. But speed is not good compared to teamviewer (which had a lot of stability issues on linux when I tested it 3-4 years ago)
About NAT/firewall zerotier[3] solves most of my issues.
[1] https://wiki.x2go.org/doku.php
[2] http://winswitch.org/
[3] https://github.com/zerotier/ZeroTierOne