ShadowProtect seems to do the best job at making your life easier when it comes to backing up, and restoring, a Windows based machine. Most of the issues I've encountered are not produced by ShadowProtect, or the images it creates, but by other issues. Dual boot systems (especially with Vista) is a prime example. Just creating a dual boot Vista/XP from CDs can be much more painful than you'd expect. I guess Microsoft didn't expect people to create such systems......
There are lots of details on the web about Vista/XP dual boot systems, but many miss out on some critical information, so here are some hints:
(1) Ideally install WinXP (or Win2003, Win2000 etc.), either as a fresh install or restored image, BEFORE installing Vista.
Wh? Because Vista uses a completely different boot loader (Winload.exe) rather than the older version (ntldr, NTDETECT.COM, boot.ini).
(2) Vista needs to go on the first BOOT partition. Vista needs to be in charge of the inital boot up process.
If you install Vista on a machine before WinXP, or have a PC with WinXP already installed, it's best to shrink the WinXP partition and create a Vista partition just before on the disk. If you install Vista on a second hard drive in a PC you can normally change the HD boot order in the BIOS so that HD boots first. That will make sure the Vista boot loader (first boot disk, first partition, BOOT) will load before the WinXP ntldr.
(3) The WinXP boot loader files (ntldr, NTDETECT.COM, boot.ini) ALSO need to be on the first boot partition in order for you to boot WinXP.
However strange this may seem, it means that you must place the WinXP boot loader files on the system root directory of the Vista install, along with the native Vista boot loader, called winload.exe. The boot.ini file should then point to the partition that WInXP is installed on, say, partition 2.
(4) At boot up the PC will use the BIOS to find the first HD to boot from first, reference the MBR (in this case it should be the Vista-centric version), and then load the associated Vista bootloader. This will show the OSs listed in the Vista's BCD database: Vista, and WinXP. If you select Vista it will simply load the Vista OS. If you select WinXP it will drop the Vista bootloader and reload the ntldr from the same directory. This WinXP boot loader will read the boot.ini file and use it to find the location of WinXP to load.
SOME IMPORTANT THINGS TO REMEMBER:
(A) If you install WinXP (from CD) AFTER Vista then it will overwrite the Vista-MBR and Vista will not boot.
In this case, boot into WinXP, download EasyBCD, and use it to (i) overwrite the MBR with a Vista version, (ii) updated the BCD database with an entry for WinXP.
(B) If you install WinXP (from backup image) AFTER Vista then don't select "Over-write MBR". Doing so will overwrite the Vista-MBR.
After performing the restore, boot into Vista. Copy the ntldr, NTDETECT.COM, boot.ini files from the WinXP system root to the Vista system root directory.
Make sure that the boot.ini points to the correct partition number for the WinXP install. Download EasyBCD and update the BCD database to include a reference to the WinXP install (this will produce in the second "Windows XP" boot option appearing on the boot menu.)
(C) If you install (or restore) Vista to anything other than the first partition you're going to have trouble booting it up. Overwriting the MBR with a Vista-MBR and putting the Vista boot loader file (winload.exe) into the first (BOOT) partition probably will not work at all, and may even stop the OS in the first partition from booting up. Always try and put Vista in the first boot partition - it makes things much easier.
(D) If you install Vista (from CD or restore) onto a second HD, use the BIOS to make that the first boot disk. You will then need to copy the WinXP boot loader files to the system root of that disk, updated the Vista BCD with an entry for WinXP (so you get the second boot option on boot up) and then update the boot.ini file, making sure to reference the second disk.
(E) If your PC is running fine, don't be tempted to "try out" a restore by restoring an image of that same OS onto a HD in the same PC. You are asking for trouble. It's good to practice a restore before you need it but just be smart about it.
(F) If you perform a restore of WinXP (or Vista) on a PC, just keep in mind a couple of things. First, Windows will often ask you to activate BEFORE you can log into one of the accounts. If you restore to different hardware you may not have a NIC driver installed......so you can't activate online, and have to call Microsoft in India, and speak to a man called "Dave", to get a new Confirmation ID. If the image came from a PC/laptop with Windows pre-installed, the chances are that it is an OEM license. You will not be able to activate the license (and therefore log on to the restore image) if the motherboard is different to the original PC/laptop.