Alternative to built in compare and merge tools in TFS, Tortoise SVN and more

KDiff3 is a great (free) alternative to the inbuilt merge/compare offerings in TFS/SVN etc.
Navigate to (get the exe at the bottom).

To set this as the default tool in VS go to Tools -> Options -> Source Control -> Visual Studio Team Foundation Server -> Configure User Tools…

Add one for compare and one for merge.

Extension: .*
Command: C:\Program Files\KDiff3\kdiff3.exe
Arguments for compare:

%1 --fname %6 %2  --fname %7
Arguments for merge:

%3 --fname %8 %2  --fname %7 %1 --fname %6 -o %4
The KDiff3 installer will automatically integrate with other popular source control systems like SVN/Tortoise and ClearCase.
UPDATE: There was a problem with the previous verison of this post the hypens in the kdiff3 arguments where coming out as single hypen and not double hypen due to some automatic formatting which WordPress performs. Thanks to Andrew W for spotting this!