I have to say that this list here is helpful, if a bit confusing: it includes low level protocols (like NX, VNC, and now xpra) as well as high level wrappers (like neatx, freenx, and now winswitch). Also it points to some VNC implementations, but not the more recent TigerVNC fork...

NX is an implementation from NoMachine, the protocol is a mutated DXCP. VNC (like TightVNC) is usable without any wrappers (like ThinLic).
–
Hubert KarioDec 21 '10 at 11:43

Is this a clarification? NX, xpra and VNC can all be used without any wrappers. What I meant is that it may be useful to distinguish the protocols themselves (NX, VNC, xpra, RDP, ssh X11 forwarding...) from the wrappers (NX proprietary, freenx, neatx, winswitch, etc..)
–
totaamDec 21 '10 at 12:23

In most cases it's hard to distinguish protocol from implementation. Raw NX libraries are impossible to use AFAIK, you have to use some kind of wrapper. What's more, in big deployments things like sound sharing and print sharing are ''very'' important.
–
Hubert KarioJan 9 '11 at 19:19

I strongly disagree: protocols (like RFB or NX) are well documented, and there may be dozens of implementations for it (as is the case for RFB). As for NX, it is trivial to use without a wrapper, even recommended when testing an installation: you can just run nxagent/nxproxy (see NX docs for details). The importance of sound and print sharing does not change that: this is supported by the protocol, not the wrappers.
–
totaamJan 10 '11 at 12:46

X11.
(X11 is chatty and has Rotten performance over a WAN.)
As many users as you feel like.
Ships free with ever Unix-like distribution.
Used to be a pain on 10Mbps Ethernet, works fine on 100Mbps, probably great on 10Gbps
Thin client Hardware (X-Terminals) used to be available.