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.
If you're using the tool inside Windows then you either email the other person a file that contains the details or save the file and transfer it via alternative means. The user has to set a password for that connection when creating the config file.
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.
MSN/LiveMessenger/WindowsMessenger/whateveritscalledthesedays will do it.
Windows Remote Assistance FAQ. The last question shows what is supported.