Ok, here's what you need to do:
1) Set up port forwarding on the router, so that ports 7777-7780 are forwarded to your machine, enabling both TCP and UDP if that's an option(such as on a Linksys router).
2) Host a game on your machine as normal for any network game, make sure it's not running as a "dedicated server" and not running in LAN mode; you'll likely want to also turn off broadcasting the server to the public server list.
2b) You'll likely also want to password it.
3) Have your friend bring down the console(~ key), and type "open ip address", the IP address being your public IP address(i.e. the one that isn't 192.168....)
Ex: open 4.2.2.2
4) Have fun.