I finally got around to giving NoMachine a go, and it works great! At the weekend I got around to getting the machine that I was planning on using with NoMachine (and eventually, Xrdp) up and running (I can't remember if I've had that machine sitting around for 1 year, or for 2). I can sit at work and (thanks to some ssh tunnelling) "forget" that the machine I'm actually using is back at the flat. It gives the same sense of "coolness" that VMware gives.
One of the things I've found really useful is session suspend - so that I could connect to the NoMachine server from inside the flat, then suspend the session, go to work and then resume the session, picking up right where I left off.
One thing to note, when using ssh to tunnel the ssh connection that NoMachine will be using (ie, ssh into machine A with a -Llocalport:B:remoteport, so that I can ssh into machine B via machine A) be sure to set "enable SSL encryption of all traffic", otherwise it will try to use ports that aren't being tunnelled and will fall over.
Another thing to note, the "new" machine is running Xubuntu, as it's not a particularly high spec machine (256Mb of RAM and Dual 600MHz P3s), so I use "dbus-launch --exit-with-session xfce4-session" as the custom command to run.