There's not only that.
In it's current incarnation, Battle.net requires you (like most online services faced with connecting through a firewall) to open or forward ports to the machine running the game. Normally this is no problem, for example XBox Live works the same way. Unfortunately, Battle.net wasn't forward-thinking enough to use multiple ports! As only a single port is used for communication between the server and the client, only one client may communicate with the server through the firewall or router.
This should have been fixed back in the day through an update, but alas it's still true. A couple months ago my friends and I decided to pick the old game up and try playing it. I was surprised at how everything worked well after setting up the firewall. Unfortunately the minute I had a few other friends over and we all tried playing over my cable service, a realization quickly dawned. I could host fine, everyone could connect... but there was an inorinate amount of lag once the game started. This lag was only alleviated when the people physically there weren't in the hosted game, or the remote players were sitting it out. Any mix of the two resulted in the game being outright unplayable.
And I'll echo your point. I'm house-sitting for a close friend now and there is no internet at his place. He said having the rest of the guys over for LANs or Rock Band or whatever be it would be fine. If StarCraft 2 were out, it would (have) probably be(en) the game we'd play the most. I don't like this one bit.