While working on a project maintained in TFS, I noticed that some of the files I was using were checked out by another TFS user who I thought had completed all his work on those files, so I wanted to let him know he still had those files checked out (and to ask him to undo those pending changes, to prevent unnecessary merging later on).
I wondered if there were a way to find all files under a TFS directory which were checked out, and initial googling found a mention of something called "Team Foundation Server Power Tools", a Visual Studio add-on, which would allow you to do this from within Visual Studio. But I was a little paranoid about adding something to my Visual Studio setup.
Fortunately, it's not too difficult to get this same information using the command-line TFS command, like this:
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\tf" status "$/[your TFS path here]" /recursive /user:*
It's helpful to redirect this command's output to a text file since it's pretty wide. And note you can select a specific user by specifying that user instead of the wildcard, like this:
"C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\tf" status "$/[your TFS path here]" /recursive /user:DOMAIN\user.name >results.txt
Reference for the "tf" command:
http://msdn.microsoft.com/en-us/library/z51z7zy0%28v=vs.100%29.aspx