Disk2VHD works quite well on systems NT and up, there's also an option to virtualise the disk for use in something like vmplayer.
Macrium Reflect has a free version but it's limited to standard disks and won't handle stuff like dynamic disks (for example, disks with more than four partitions).