Chkdsk is a great tool. There's a reason why it's still included in Windows. In fact, Windows will automatically run Chkdsk at startup if it detects corrupt files. That being said, it's designed to run on a properly working drive. If the drive is suspect, image it first before running Chkdsk.
Another thing you can do is mount the drive in Mac OS or Linux. Drives that show up as "unknown" or refuse to mount in Windows will frequently work just fine in Mac OS or Linux. Simply mounting a damaged drive in Mac OS or Linux is a lot gentler on a failing drive than trying to do a complete image. This is especially true if all the client needs is the contents of the Documents folder, for example.
In conclusion, Chkdsk has its place, but only if you've ruled out hardware failure first. You shouldn't run ANY file system/OS repair tool on a failing drive, not just Chkdsk. When a failing drive comes in, I try to just grab the files in Windows. If that fails then I plug the drive into a Mac and see if I can get them from there. If that fails, then I'll image the drive using DDRescue and then work off the image.
Of course, if the drive has obvious signs of a serious hardware issue (i.e., not spinning up, clicking, etc.) I immediately send it out to a professional data recovery center. Every situation is different, but you shouldn't write off Chkdsk. It's still a great tool even today.