As a software developer, comparing files is a daily activity. It will suffice to say that I have settled for beyond compare (3.0) to do that for me for the past 8-9 years.
It is easy to use.
It is lightweight.
It integrates out of the box with GIT, SVN, TFS and perforce (SCM softwares i've worked on). I think some SCM's also have it as a pre-built option in diff-tool setting.
It compares folders as good as files.
It has great highlighting of the line level differences. Easily catches the eye
It also shows invisible characters in the diff as hexadecimal values.
Worth the money for me.
When the two files have big chunks different, or say one of them has BIG chunks deleted in few places, the diff tools goes a bit crazy and matches lines awkwardly. It literally finds a match for a line in deleted functionA, with some other functionB in the other file.
I use it for seeing diff between files when
- Checking in code
- Reviewing other's code commits
- Reviewing files in scenarios where one works but the other doesn't