Network Address Translation (NAT) is the translation of an IP address used within one network to a different IP address known within another network. Typically, one network is designated the inside network and the other is the outside. For example, a company maps its local "inside" network addresses to one or more global "outside" IP addresses and unmaps the global IP addresses on incoming packets back into local IP addresses. This helps ensure security since each outgoing or incoming request must go through a translation process that also offers the opportunity to qualify or authenticate the request or match it to a previous request. NAT also conserves on the number of global IP addresses that a company needs and it lets the company use a single IP address in its communication with the world. It thus provides a means of reducing (or least slowing down!) the depletion of IP addresses available globally.
NAT is included as part of a router and is often part of a corporate firewall. Network administrators create a NAT table that does the global-to-local and local-to-global IP address mapping. NAT can be statically defined or it can be set up to dynamically translate from and to a pool of IP addresses (DHCP). Not surprisingly different routers will have different capabilities, what is more than ample for a SOHO configuration might have too many limitations in a large organisation.
NAT is described in general terms in RFC 1631.
In terms of using PCAnywhere port-forwarding the appropriate ports is required. Most (SOHO) routers however have limitations such as specific ports can only be forwarded to one LAN ("inside") IP address, which can be a limitation it you wanted to be using PCAnywhere on more than one PC.
The broadviewnet site is a useful site For PCAnywhere. GotoMYPC offers broadly similar functionality and having a NAT router does not hamper the use of GotoMYPC in any way.