With 1.1 allowing people behind firewalls to host, there are now tons of peole learning how to use routers for the first time. In order to get all the ports in one spot, I list them here for you now.
My advice is to forward TCP and UDP packets.
First, the directplay ports:
2302 to 2400
Second, all the gamespy ports:
27900 (Master Server UDP Heartbeat)
28900 (Master Server List Request)
29900 (GP Connection Manager)
29901 (GP Search Manager)
13139 (Custom UDP Pings)
3783 (Voice Chat Port)
6515 (Dplay UDP)
6500 (Query Port)
Once that's working, you should be able to host games on Gamespy.
If you host a game, and it shows as a 999 ping (and subsequently vanishes from the list), then you've not forwarded a port correctly (most likely).
You will also need to shut down any firewall software and perhaps windows xp firewall (if on).
See this page for more help:
Note, the above list of ports were collected from the HW2 Readme and the above page.