X11 Forwarding through SSH enables a user to run a software application from a remote system using the CPU and memory of the remote system while rendering the GUI of the application locally. This can be very handy if your chosen desktop is Linux, Windows, or Mac (this tutorial will not cover Mac) but either the application is not cross platform or unavailable due to licensing, your local system does not have the local resources to run the chosen application, or you need access to network resources which are local to the target of the SSH connection but not local to the machine you are currently using (i.e. a server behind a firewall/gateway device that has port forwarding for SSH to the remote host to which you are connecting).
There are plenty of remote control software packages which would allow for full desktop rendering. Sometimes it's not necessary to display a full desktop. In a Microsoft Windows environment this would be most closely similar to the technology of RemoteApp.
X11 Forwarding is easy to setup and use. Best of all, X11 Forwarding through SSH is encrypted which means the entire SSH communication is encapsulated in a the SSH Session. This tutorial will assist in configuring the remote server to allow X11 Forwarding through SSH and will provide local commands or software needed to establish connection to the X11 Session through SSH.