Certain types of work, especially programming, require the regular comparison of text files, or "diffs". For coders, most version control software comes with a diffing tool, but if you're not using SourceTree, Perforce or similar VCS client, you might be wondering what your choices are. Some options are definitely better than others, but often it comes down to presentation.
To take the effort out of narrowing your choices, gHack's Martin Brinkmann has put together a list of five popular programs, all completely free. They include the likes of ExamDiff and WinMerge, but the one that caught my eye is Meld. It needs Python installed to run, but what I like is how it links changes together graphically, making it much easier to figure out where and how the compared files differ.
As I mentioned earlier, most comparison tools will provide the features you need, what it comes down to is how clearly the differences are pulled out. For example, a program like ExamDiff is fairly plain — text blocks are marked in a single colour and there's no syntax highlighting. Diffuse, on the other hand, does support syntax highlighting for a number of languages and it'll mark out changes in various colours.
Hit up the gHacks article for more impressions on other file comparison tools. Personally, I've made do with TortoiseGitMerge, but I like the look of Diffuse and Meld.