I'm at our Mexico user group this week and I had a heck of a day yesterday relating to System Restore. I've used System Restore in the past, but never had problems like this.
It started with a connection problem that was occurring on a closed loop network. The connection worked, but it took an awfully long time to connect to the web interface provided by a device on the network whereas a ping was almost instantaneous. At first I though IE7 might be to blame, so I rolled that back. No luck. I then reinstalled IE7 with no luck.
So, my next thought was to do a System Restore from the morning before my trip. It didn't solve the problem, and I quickly found out that System Restore restored the code in my solutions!
All of the changes which happened to be a few dozen bug fixes and over 40 unit tests all gone. This occurred with Visual Studio 2005 projects. I hadn't changed anything on Visual Studio 2003 projects, so I don't know if they are affected too.
Hopefully, this warning will remind someone to backup their code before doing a System Restore.