I'm not an expert in this area by any means, but I think there are a couple of ways you can do this.
This way you set up an SSH connection with X forwarding turned on. In this case, you need to have a full X environment running on the local machine. If the local machine is running Windows, you'll need to install something like Cygwin to give you an X environment. I don't think that you need a full X install on the remote machine, but you might need some libraries for the programs to function properly.
This way requires a full X install on the remote machine, and you connect to the remote VNC server with a local VNC client. If you're doing this, you also need to investigate using VNC over an SSH tunnel as VNC has no security to speak of. There are VNC clients for pretty much any OS. The NX system works similarly, but supposedly has better compression than VNC, and therefore might be faster.