When you have more than one machine that you're using or managing, it becomes pretty tedious to be hopping from one machine to the other, especially when they are physically not next to each other. In fact, if you know any system administrators, most of them will swear by it that it makes their lives easier.
There are many varieties of RDC software in the market, some are more well established than others, and some are chargeable while some are free. For me, I've always used a selected few depending on scenarios. The usual suspects are UltraVNC, Teamviewer, sometimes Webex, and occasionally Microsoft Terminal Services.
For machines on intranet and those requiring frequent connections, I always prefer uVNC because it can run as a service and always ready for connection. It offers good performance and also supports display scaling and repeater functions etc. although I've never tried some of it (like repeater) yet. Best of all, it is open source and free. Of course, if you are mainly connecting to a bunch of Windows Servers, you could turn on Terminal Services on them to allow for RDC connection without installing any 3rd party applications.
For machines that are on the internet, it would be more complicated if you want to use uVNC. You would need fixed IPs or some kind of dynamic DNS service to keep your IP address in sync. Otherwise you would not be able to locate your remote machine once the IP changes. Most of the time I use either Webex or Teamviewer in these scenarios. Both of them will automatically manage your IP address, and provides you with a reference number (Teamviewer) or reference link (Webex) to connect to.
The good thing about Webex is you can schedule the meeting session to be active at a particular time (it was designed for web conference and web presentation), and the server can decide on who to grant control to. Also, it doesn't need any application installation, just some applet running on web browsers. But the free version only allow meetings to run a maximum of 24 hours each session. Therefore you need to have physical control of the server all the time.
Teamviewer is very light weight and have options to run as is without installation (the downloaded EXE is about 4.5mb). You probably know by now I'm a big fan of portable apps as you can keep all these apps in a thumbdrive and bring them around. Teamviewer has options to setup for unattended access, which allows the server to be accessed anytime. Once the app is running, it will generate a unique ID and password for you. You can then share this info with anyone who needs to connect to your machine.
(Edit: You can find a big comparison list of all kinds of remote desktop softwares in Wikipedia over here.)