Windows Server 2003 Service Pack 1 adds a useful workaround for an old Wibbles caveat: when in Unicast mode, cluster members can't use their NLB'd interfaces to talk to each other.

In Unicast mode, the NLB-bound interfaces for all nodes in a cluster share the same MAC address (the NICs' actual MAC addresses are pretty much just overwritten), which means that when a cluster node ARPs for the other node's IP address and gets its own MAC back in return, no traffic ends up hitting the wire.

This makes a multi-NIC NLB implementation common for Unicast mode where the hosts are required to talk to one another directly (such as an ISA Server array, in which inter-host communication is used for server-side CARP).

In Multicast mode, this isn't a problem; the card retains its inbuilt MAC address, and any cluster address MACs are multicasted in addition to it.

The UnicastInterHostCommSupport registry value tells NLB to enable an additional unique MAC address for each node, allowing hosts to communicate with each other using the cluster adapter, which could also eliminate the need for one tier of network adapters, if inter-host communication is part of the scenario.

See also:
NLBTech2 - still the best source of information on how the basics work
NLB FAQ for Windows Server 2003 and 2000
Choosing Unicast vs Multicast in the Deployment Guide

Last but not least, My NLB Back Catalogue (link searches for posts containing "NLB" - mental note: categorize better).