Not quite sure you grasp the subtleties of difference between load-balancing (NLB) and server clustering (MSCS)? After all, both are technologies that allow distinct server nodes to be externally visible via a virtual server, and support failover. The fundamental similarities might overshadow their concisely stated difference:

Server clusters – uses a shared-nothing architecture, which means that a resource can be active on only one server in the cluster at any one time. Because of this, it is well suited to applications that maintain some sort of state (for example, a database).

Network Load Balancing (NLB) – uses a load balancing architecture, which means that a resource can be active on ALL servers in the cluster at any one time. Because of this, it is well suited to applications that do not maintain state (for example, a Web server).

Note: This information is copyright © 2003, Microsoft Corporation, gleaned from the freely available documentation on cluster quorums for Windows Server 2003. I provide it here for the sake of convenience and exposure.

Updated: