I use both teamviewer and LogMeIn and recently trialled almost every remote control software there is but here are my top free ones:
LogMeIn.com is very good... free version has no restrictions (non-commercial obviously) and allows you to access computers unattended. I use this a lot between my home pc/laptop and work computer. It has some restrictions like not being able to copy files between computers, remote sound and printing etc that you can pay extra for (which is probably worth it), but you can copy and paste text across computers ok.
TeamViewer is also very very good... I have just bought the a commercial license which is good for the lifetime of the software (i.e. no yearly subscription). The free version is ideal and I bought the commercial version because I offer remote support to my customers. The free version is the same as the commercial version. You can move files between computers (unlike LogMeIn) and you can also setup and connect to unattended computers.
LogmeIn is web browser based on the support computer and you need to install software on the client computer.
TeamViewer is software based (you need to install a small .exe on both the client support computer).
Both of these uses Port 80 (http) so you will never have any issues of getting though firewalls / routers etc.
On the otherhand there are programs such as UltraVNC, RealVNC, Remote Session Support etc which are a lot more difficult to get up and running but you dont need to rely on a external server to relay the session. I started with these but had so many issues and was difficult trying to explain to a customer what check-boxes to tick, untick etc, and I had speed issues as the control of the client PC always seemed sluggish and unresponsive. You also need to open a port on your firewall (or setup your own server to relay remote sessions).
The best overall remote control is LogMeIn because you can use it from any computer followed very closely by Teamviewer.