Ok, I have read about installing multiple nic's in a server and expanding the throughput capabilities through load balancing. I might be using this term incorrectly. Now, depending on the application, wether it be a sql server, web server, active directory, and others have built in load balancing options when configured with other nodes on the network and so forth. Those are application specific options though.
My question is how to setup a windows 2008 server with multiple nics to generaly best utilize multiple nics? Do I bind services to individual nics? Is there some third party software for windows server that manages general network load balancing? Is there a windows setup procedure that can send traffic to the current least used network interface? I am wanting to best use the network throughput through multiple nics on one server, not distribute to other servers.
EDIT:
Title is changed and now the proper question is how I setup "teaming" multiple nics in windows server 2008?
For a single server, what you're essentially asking about in maximizing network throughput is not so much load balancing, but teaming.
Load Balancing is typically done by a "front-end" device that doesn't do a whole lot of processing, other than to keep track of traffic, and send any new incoming "requests" to the currently least-used application server. Multiple devices are involved here.
Teaming (or more loosely, bridging) makes multiple network cards appear as one card. So for example if you have 2 NICs at 1Gb speed, you can team them together to get up to 2Gb of throughput. With teaming, it is very important to make sure that the network hardware you're plugging into supports it. Most likely, you will also have to configure the switch, so that it knows to team the physical ports together. Otherwise, traffic can be delivered arbitrarily between the physical ports causing many connection issues (broken connections, lots of retransmissions, severely reduced throughput, etc).
So for the most network throughput on a single server, use NIC teaming. For distributing an application's load across a group of separate servers, think load balancing.
As routeNpingme pointed out, you should configure the switch accordingly.
If your NIC driver supports LACP, use is on the switch aswell. Otherwise, you'll have to stick with a static trunk on the switch. Here is a config example for Cisco:
Switch# conf t
Switch(config)# int g0/1
Switch(config-if)# channel-group 1 mode on
Switch(config-if)# exit
Switch(config)# int g0/2
Switch(config-if)# channel-group 1 mode on
Switch(config-if)# end
For LACP, you would do something like this:
Switch# conf t
Switch(config)# int g0/1
Switch(config-if)# channel-proto lacp
Switch(config-if)# channel-group 1 mode act
Switch(config-if)# exit
Switch(config)# int g0/2
Switch(config-if)# channel-proto lacp
Switch(config-if)# channel-group 1 mode act
Switch(config-if)# end