Windows command line binary diff tools

Is there a Windows command-line diff tool that is free?

I need to compare two binary files and see if they are different or not. I'm not interested in how they are different I just need to know if they are.


Use the comp command under cmd.exe

[C:\]comp /?
Compares the contents of two files or sets of files.                                                                    

COMP [data1] [data2] [/D] [/A] [/L] [/N=number] [/C] [/OFF[LINE]]                                                       

  data1      Specifies location and name(s) of first file(s) to compare.                                                
  data2      Specifies location and name(s) of second files to compare.                                                 
  /D         Displays differences in decimal format.                                                                    
  /A         Displays differences in ASCII characters.                                                                  
  /L         Displays line numbers for differences.                                                                     
  /N=number  Compares only the first specified number of lines in each file.                                            
  /C         Disregards case of ASCII letters when comparing files.                                                     
  /OFF[LINE] Do not skip files with offline attribute set.                                                              

To compare sets of files, use wildcards in data1 and data2 parameters. 

To simply see if they are different, you could MD5 them. For more detailed information on differences there is GNU DiffUtils for Windows.


The title is misleading, since the author doesn't really want a full diff. He only wants to know IF 2 files are different. The distinction is important if the files are big.

Checksumming methods will obviously read both files entirely. As far as I could tell, Windows' FC and COMP both also read the entire files, even if there was a difference in the first bytes.

As John T suggests, get GNU diffutils, which includes cmp.exe. With big files, cmp will be a lot faster than COMP or FC.

That is if you need it to be a command-line tool. If you can use a GUI shareware, Total Commander has a "Compare Files" command, and a "Synchronize dirs" command which can be set to compare files by content. Both are extremely fast.