Beyond Compare

As developers, one of the most important tools is our "diff" tool. We use it to compare the contents of two (or more) files, or to compare different versions of the same file.

Beyond Compare does this and more. It is one of the very few tools I'm listing on this site that is not free. But it is certainly worth it. Let's take a look:

Here is the basic "look" of the tool, when comparing two versions of a file:

Notice a few important pieces of that image. First, you can clearly see the filename being compared, and the version numbers (from your source control system):

Now, I'm not going to name names, but... a few of the popular free diff tools out there don't even show you the filename of the files being compared!
Of course you can also see the contents of the file, with the differences highlighted:

And one of the strengths of this tool is that for whatever line you have clicked on in the content view, you can see a detailed "diff" for that ONE line down on the bottom:

I've come to consider this a "must have" feature in a diff tool, and whenver I use any other tool I am very annoyed by the lack of it.
Now, let's talk about things that make it even more useful and special. See how it integrates directly with Windows Explorer. First, right click on any file, and pick "Select Left File" like so:

Then, right click on any other file (even in another folder or on another disk!), and pick "Compare To..." like so:

And that's it - you are brought into a normal comparison window. This even works for comparing folders (with subfolders). Select the two folders just as you would have selected the two files above, and see:

Once in that view, you can easily drill into each file for further comparison. It is also very easy to configure your SVN, Hg, or other source control system to use Beyond Compare as the default diff tool.