Team Foundation Server is a great Product.
No matter how great it is, the same questions do arise on any large scale development project I face, with any SCM & Build tool :
Here are some simple rules & trick that we found appropriate to use with TFS:
Developers have an M: Drive mapped to a local copy of the repository.
Most dependencies reference the LATEST version (except in some cases where the explicitly reference a Released version ex : 1.0)
Developers work with their local copy. When the version is stable, that can update their local Repo with a script from the repository (robocopy), an build again ( with the latest build assemblies).
Comments on this are more than welcome.