Team Foundation Server is the optimal choice for developing in the .NET world. However it is not free and for the current version 2008 it can be quite expensive. If you have higher level package for Visual Studio you do get TFS workgroup edition for free which allows 5 users access for no additional cost.
There are some major caveats to the workgroup edition you must use one of the 5 slots for the TFS service account unless you set it up to run under a users account that will be included in the TFS member list. The other is once you hit your 5 user limit the jump to 6 users is a fairly staggering cost as the current license requirements include the need to purchase the server (a few thousand dollars) AND CALs for every member of the team. That's a fairly prohibitive cost to add one more member to the team.
However, Microsoft has come to realize this and is changing this for 2010. You will no longer need to purchase the server itself and will only need to purchase CALs. TFS 2010 server licensing: It's included in MSDN subscriptions