WinMerge is an Open Source visual text file differencing and merging tool for Win32 platforms. It is highly useful for determing what has changed between project versions, and then merging changes between versions.
Visual differencing and merging of text files
Flexible editor with syntax highlighting
Handles DOS, UNIX and MAC text file formats
Unicode support
Difference pane shows current difference in two vertical panes
Location pane shows map of files compared
Highlights differences inside lines
File filters in directory diff
Moved lines detection in file compare
Shell Integration
Rudimentary Visual SourceSafe and Rational ClearCase integration
Archive file support using 7-zip
Plugins
Localizable interface via resource DLL
HTML-based Manual