Hi, you can use "rsync", in test mode (--dry-run), to build a list of the files that have differing MD5 checksums, or are missing, between a local and remote directory. It will also recurse into sub-directories, unless you tell it otherwise.
It a Unix tool, for which there are Windows ports, but personally I prefer running the unix version, under Cygwin, on Windows.