The hard bit of a backup is the bare metal restore. Users files are, after all, just user files and can be easily backed up and restored in a wide variety of ways.
If your C: partition is small enough then I recommend using one of the many partition snapshot apps. My own favorite is Drive Snapshot (www.drivesnapshot.de), which I've used for several years, but there are several similar products out there. Drive Snapshot takes a sector level copy of a partition and (this is the impressive bit) it can copy the system partition while the server is running. If you lose the server you simply boot off a WinPE (or BartPE) CD and use Drive Snapshot to copy the snapshot back onto the disk. Snapshot can even create the partitions for you from the info stored in the snapshot. I've done this in anger, and under considerable stress, and Drive Snapshot has never let me down.
I tend to use tape for Backups where I can, as you can take the tapes off site, but I do have some servers that backup to a NAS device. Whichever the case, I have the backup script run Snapshot, then either write the snapshot file to tape and/or copy it to a NAS box. If the snapshot isn't too big I keep the last week or so copies of the daily snapshot file.
Re rsync, I use this a lot myself, but on Windows you'd be using the Cygwin rsync and this tends to hang when syncing folders with a lot (e.g. 100,000) of files. If you're syncing on a LAN there are more reliable alternatives. An app called "reconcile" is my own favourite, but then I wrote it :-) See http://www.ratsauce.co.uk/winsrc/ if you want a play. If you're syncing through a WAN link then rsync is the obvious way to do it.
Some other fairly obvious points that you probably already considered. Is if possible to upgrade the disks in the two servers to provide enough space for the servers to sync to each other? Then you could lose one server and have the remaining one take up the slack. Also note that in general you can't restore a system partition from one server onto another with different hardware and expect it to work very well. If the disk controllers are identical it will probably boot, but you'll lose the network config.
One last point (possibly more for the future) for application servers like Exchange servers I tend to use virtualisation these days. VMWare works very well on Server 2003 or of course Hyper-V is built into Server 2008. Virtual servers are very easy to backup because you just copy the files from the host server.
This website lists the different ways of doing it. If you have LVM that is really the best. One thing I would make sure of is that if you are running any database apps, to do a database dump of all the databases before backing up the container (ie mysqldump).
Best Answer
The ultimate solution is two web servers in different locations using BGP to advertise the IPs used; if the primary goes down the secondary will take its place on the same IP in a few seconds.
Depending on your needs, existing infrastructure and budget this may be ideal or impossible; can you give us a few hints regarding your web server setup and what you have to work with?
As for making the backup site this is dependent on the web technology used; it might be as simple as copy some PHP files over and set up MySQL replication, or it might be an expensive as requiring enterprise licensing for Sharepoint and MSSQL.