this is a good explanationhttp://lifehacker.com/software/feature/ ... 127276.php
Basically you have to enable port forwarding on your router for port 80 (usually). This will allow those outside your network to peer inside over port 80 to find the machine XAMPP is installed on.
Then, depending in if you wish to use a domain name, you will either use the external IP of your router xxx.xxx.xxx.xxx as the address for your server or point the NameServer for your registered domain to that IP.
You will need to know if you have a static or dynamic IP. If you have a dynamic IP, you will need to use a service Like DynDNS or NoIP.