I agree with KSchmidt that winmerge is a good alternative for TortoiseDiff. However, you also mention it as a merge tool, which is strange since winmerge does not do 3-way merge... 
I do recommend KDiff3 as an alternative for TortoiseMerge, which I find somewhat counterintuitive (but that may be just me :-))