I'm pretty sure the answer is "yes", but if I purchase Starcraft 2, and a friend or my roommate wants to play me using two of my computers both on the same LAN, do I need a second battle.net account and a second license? I ask because another of other RTS games can be played in LAN mode with only one copy, and that's often what I've done in the past.
Starcraft 2 does not support LAN, so yes you'd need two licenses, but you'd be playing over Battle.net NOT lan.
You will need to be able to connect to Battle.net. You can give your friend a 14 day guest pass from your account. He should be able to play on that.
There is no LAN in SC2 (yet), only internet. Consider your LAN mates as arbitrary internet players. Each connects to Battle.Net, authenticates and plays connected to the internet.
So, yes, each one will need a separate Battle.Net account and a game license.
The main restriction: you need to login before start playing... Can you login from two different PCs simultaneously with the same login? I don't think so.