WARNING: Using teamviewer as describe is NOT Free. It does require a paid license for commercial use. It really works best for remote tech support. Not the best for working for long periods of time or data entry.
FYI: LogMeIn and GoToMyPC both handle remote printing. They are both much better, for remote workers than TeamViewer, which is better for report support than the other two.
I have tried just about every remote access application since about 1987 with DOS and dial-up modems over phone lines.
I still find the free built-in Remote Desktop Connection (RDC) in Windows works the best. In addition, it does remote printing really well now.
NOTE: Windows Desktop OS can be used as a single remote session Terminal Server for free. Since Windows Desktop is a single user license, you can only have one session running, either local or remote, but not both.
To set up remote access to your desktop PC:
On the computer you want to remote access, you turn on Remote Desktop connection. Next you have to add port forwarding in the rout for 3389 (the default port) to the PC you want to remote access. You may have to open the port in your firewall also.
That is it. No software to install. It is all free. All that takes less than 5 minutes to configure.
You use the WAN IP for your host PC to connect over the internet from any device running an RDP client, like Windows XP and later.
Microsoft even has a free RDP client for Android and probably apple too. I use it on my Android tablet to access my desktop.
It really is simple and free!
If for some reason you are not allowed to set up port forwarding in your router, then services like LogMeIn, GoToMyPC, CloudBerry Remote Assistant, TeamViewer and others handle the port forwarding issue on their servers.
I have been using the free built-in Remote Desktop Connection regularly sine 2000..
I probably work 99% of my time on a desktop PC working via a Remote Desktop Connection (RDC) session.
I have nothing against TeamViewer. I actually have purchased commercial licenses for work to use for remote management and support for client's servers and desktops. I even run TeamViewer in a RDP session.
Bonus TIP for remote support:
CloudBerry Remote Assistant
Free remote access and control over the Internet
It is really giving TeamViewer some serious competition.