I assume your setup is as follows:
A--B==========C--D
Where:
A represents your machine
B represents your router
C represents their router
D represents the target machine (LAN IP = 192.168.1.101)
- represents a LAN connection
= represents an internet connection.
I'll also assume you're going to use Remote Administrator (but VNC, RDP, etc could fit in just as well.)
Install RAdmin server on D. Configure the server to listen on a different port (I tend to avoid using standard ports for security reasons; I'll use 12874 in this example). Make sure server is started. On router C, configure port forwarding to forward traffic on port 12874 to the target's LAN IP (192.168.1.101). Port forwarding is configured in the router's config pages (usually using a browser.)
Now register a dynamic hostname (e.g. at
http://www.dyndns.org) and run the client on D. Some router's provide the ability to maintain a dynamic host - in this case it's not necessary to install the client on D. Check if your router provides such functionality; if it does then use the supported dynamic dns service to register your hostname. Let's assume you've registered "mattisgreat.dyndns.org".
As long as the connection is always going to be from A to D (and not also D to A), then router B needs no configuration done to it. If you do want to connect to A from D, then perform the same port forwarding and dynamic host actions on router B.
On machine a, install the RAdmin client. Start it and add a connection with the following info :
host = mattisgreat.dyndns.org
port = 12874.
Connect. Voila.
EDIT: Make sure any firewall on D allows incoming traffic on port 12874.