Probably a router...
A very good possibility why you cannot host a successful game is if you are behind a hardware firewall, such as a router.
What's a router you ask? In addition to your DSL / Cable modem, you may have another box which you connect your computer's network cable to. This may be a router.
If you have mulitple computers connected to a single Internet connection, this may also be a good sign you have a router.
Also, there is the possibility that your modem has an integrated firewall or your Internet service protects you from incoming connections on the same port which WC3 is hosted on.
And as another possibility, low-performance internet connections do not often host successful games. The reason being that players and servers tend to favor lower ping / faster transmission speeds. If your DSL or Cable service is very slow (especially uploading) or you are downloading other things while attempting to host a game, other players may not even your see your game hosted let alone choose to play there.
And lastly, it is important that you have the latest game update available for WC3. Most players will have the latest update and those players will not be able to join an older version of the game... And vice versa.