You can use the disk utilities that came with the new hard drive (Seatools on Seagate drives for example.)
Another option would be Redo. http://redobackup.org/download.php
If the new hard drive is larger than the old hard drive, you will need to resize your windows partition to fill the drive. This can be done with Redo, in the launcher menu select gparted.
Redo can be "burned" to a CD or USB thumbdrive using Linux Live USB Creatorhttp://www.linuxliveusb.com/en/download