The other day I tried to do a history comparison in VS 2008, but got no dialog, and VS was not responsive. After I stopped it in Task Manager, VS restarted without problems, but with the same issue with the compare dialog. The problem was that the dialog location was set in UISettings.config to a location off the screen. I found details here:
My config file had this line:
< DialogCompareVS height="359" width="637" x="-1867" y="467" >
The config file was in C:\Users\Henry\AppData\Local\Microsoft\Team Foundation\2.0\Cache, which is the Vista location; for XP, it's in C:\Documents and Settings. I edited the config file and changed the x value, and the dialog was visible after a VS restart. The post above says you can just delete the config file, too. This is probably related to multiple monitors and Vista critical updates - there have been a couple of occasions where one of my monitors was disabled after a new update was applied.