KDiff3 is a program that compares or merges two or three text input files or directories, shows the differences line by line and character by character (!), provides an automatic merge-facility and an integrated editor for comfortable solving of merge-conflicts, supports Unicode, UTF-8 and other codecs, autodetection via byte-order-mark "BOM" supports KIO on KDE (allows accessing ftp, sftp, fish, smb etc.),
Printing of differences,
Manual alignment of lines,
Automatic merging of version control history ($Log$),
and has an intuitive graphical user interface.
Windows-Explorer integration Diff-Ext-for-KDiff3 - shell extension included in installer (originally by Sergey Zorin: see also Diff Ext)
KDE-Konqueror service menu plugin
Simplified integration with IBM-Rational-Clearcase for Windows (Details).
Read what else is special in a short abstract (PDF).