I was with you all the way here, and then suddenly...
> We also had source control packages that were not only easier to use, but had more features: TFS let you
Suddenly you mention TFS as an example of something good. Mind blown.
TFS is absolutely among the worst "popular" version control systems I've worked with, and maintaining several branches and merging between them is pure hell.
In TFS a branch is something heavy which moves at tectonic speeds. Trying to maintaining agility in a world of TFS is just not viable.
> TFS let you put a lock on files that don't merge well, for example.
A "key" feature which more often than not is a source of problems you only have with TFS.
90% of the failed merges I've had with TFS has been because of its completely inadequate handling of binary files.
> Both TFS and Subversion allowed you to check-out only small portions of the repository.
This has nothing to do with Git specifically. This is a difference between centralized and distributed. If you want the benefits of distributed source-control, you'll have to pay the cost.
> I'd also question that Git is "universally respected".
Yes. Universally will obviously be easily disproven. I'd say "widely respected" instead.