Blue, Yes it does work. The proper technique is called Port Forwarding and nails a port number (such as 80) to an inside PC. Not all firewalls/routers/cable devices/what-have-you support this, however. It IS possible. I do it. My girlfriend has a friend in a neighboring state that likes to FTP. So I tell the router, hey, if you hear an incoming FTP request, pipe it to my girlfriend's inside PC. Not mine!
Also, we have a web server. Work the same way. I tell Mr. Router (via Port Forwarding config) hey if you hear a request incoming to port 80, pipe it to our web server on the inside.
Same can be done for multiplayer game servers. I have hosted before behind our NAT. You can easily host all different kinds of things this way (port forwarding) while using NAT.
Not all devices have this support. Depends on how much you paid for said device. Good luck!