From a user perspective, there is very little difference between the hashing algorithms - some people like the choice though.

  • Byte-to-byte - same sized files are compared to each other one by one
  • MD5 -  128 bit hash fingerprinting is used for comparison
  • SHA-1 - 160 bit hash fingerprinting is used for comparison
  • SHA-256 - 256 bit hash fingerprinting is used for comparison
  • SHA-512 - 512 bit hash fingerprinting is used for comparison

Byte-to-byte would be considered the most exact as it compares each file "byte-to-byte". The other methods use hash fingerprinting. MD5 is the fastest, but has the highest chance of a "collision" (i.e. two different files of the same size getting the same fingerprint). This chance is still remote though (billions and billions of files), so it's not a major concern.
In summary, very little practical difference (but the SHA ones are slower). MD5 or byte should be fine for most cases.