Steam will install on drives other than C. One of the reasons I moved all of my games to the external drive was that I bought a couple of specials from Steam last Christmas and ended up with some ungodly number of games for about a hundred bucks in total (it took me over a week just to download them all). Since these wouldn’t fit on my hard drive, I had to uninstall steam and reinstall it on the external drive.
I could have done it your way as well, but I chose not to.
I will say however that your method is better for some games that had add-ons available. Sometimes the folks who make a mod for a game end up hard coding a path to something in their mod, and then their mod only works if the game is in the default location (typically under C:\program files). Using a symbolic link prevents those types of errors from causing problems while actually moving the data off of your C drive.
As for the performance issues mentioned above, I suppose since my drive is a USB external drive that the games could be loading slightly slower than if they were on an internal drive, but I haven’t noticed any speed difference. It’s not like I sit there with a stopwatch checking to see how quickly the games load.
You can do it at the command prompt with the junction command. For example, “junction c:\myfolder f:\myfolder” (without the quotes) will create a junction from the C drive to the F drive, linking the myfolder folder in each of them.
Windows Vista and 7 also support symbolic links, which use the mklink command.
“mklink /d c:\myfolder f:\myfolder”
Windows 2000, XP, Vista, and 7 support junctions. Only Vista and 7 support symbolic links.