This is in addition to the other answers, not a full answer as Michael Shimmins satisfied most of what I would say
TFS (especially 2010) is incredibly approachable for implementing source control techniques that you would have been terribly hard-pressed to execute with VSS. Branching and merging is much easier with TFS than SVN to start and follow over time. I would say the same thing about Git from an user interaction perspective, but those tools are getting better slowly.
Git is a great tool if you spend the ramp up time and the techniques that community take as standard practice are well worth the effort in any version control system. You're still going to run into conflicts with SLN and CSProj/VBProj files in teams of > 2. This is a result of the way those files are structured and managed.