IMO, the easiest way to do this is to use Ultravnc, a free remote control program. Run the Server program at work, where it will be expecting to be contacted by the Viewer program at home. You will have to configure the appropriate ports on the router at work so the Viewer program can connect. That's explained in the documentation. You will have full remote control of the work PC from home and will be able to transfer files if necessary.
Encryption plugins are available, however I have never used them. "When using such plugins, all UltraVNC data streams are integraly encrypted, making your connection really secure." - direct quote from the Ultravnc web site. With an encryption plugin enabled I believe the data would be secure.
If encryption/data security are amoung your primary concerns, you would probably want to look into using a VPN client to connect to your company's commercial firewall. Where I work, we use a CheckPoint firewall, and we use the CheckPoint VPN client to connect to the firewall. Once connected, my PC appears as if it is within the office location about 1100 miles away, and all data transmitted across the internet is encrypted.
Once the VPN client establishes its connection, I can use Remote Desktop or VNC to connect to a company PC and take remote control of that PC. We even went the extra mile and our servers are attached to a KVM switch that is network attached, allowing remote connectivity to the system to clear a "Hit F! to continue" BIOS message which happens before the OS loads.