I use a product called R-DriveImage by R-Tools Technology.
The image can be done from within Windows or via a Linux kernel
that loads from CD on boot up. the latter is good for disaster
recovery since then you can put in a new drive and boot the CD to
replace the system drive.
R-DriveImage also lets you load the backup archive file as a
virtual drive just to pull specific files if you want too ... no
need to restore the whole image if not required.
http://www.drive-image.com/
GhostImage (?) by Symantec is pretty good I hear too.
There are higher level Enterprise applications too, but they
come with related costs that most smaller companies can not afford.