Remote desktop (initially known as virtual network computing) is a technique originally designed to control (or manage) a computer remotely through the desktop, and currently is the basis of thin client technology. Nowadays almost every operating system includes a native remote desktop protocol. Windows, Linux or Mac operating systems are not exceptions.
Virtual Network Computing (VNC) is probably the first technique commonly used to manage remote desktops. It is based on a protocol called Remote FrameBuffer (RFB).
Remote Desktop Protocol (RDP). A proprietary protocol developed by Microsoft and included natively in most Windows operating systems as terminal services.
Independent Computing Architecture (ICA) designed by Citrix Systems. Another proprietary protocol initially designed to improve the poor remote desktop services provided by Windows in the beginning.
X Display Manager Control Protocol (XDMCP) is the remote desktop protocol provided by an X Window System (commonly called as X or X11). X is the desktop environment used in Unix-like operating systems. Note that X is primarily a protocol and it does not contain any specification for application user interface design. Instead, an X Window Manager is used.
NoMachine has developed a significant enhancement for the use of remote desktops connections in an X Windows System. This is provided by the NX technology. NX is not really a protocol but an adaptation of the X Windows System with two new features: 1) compression of the communication to minimize the amount of information transmitted by the remote desktop, and 2) routing of information through a secure communication channel (e.g. by using a secure shell protocol, SSH).
Open source and free NX technologies: