While the functionality is built into Windows and MacOS, the ability to traverse NAT, and otherwise deal with routers and only let certain people in securely is left to the end user to figure out.

On OS X, they also have iChat with Screen Sharing, and Back to my Mac which both try and address the problems above. Nothing that I'm aware of does this in Windows though out of the box.