Diffs are something that I used only a couple times before starting at Microsoft, and now I use them each and day at work, and keep finding other uses for them in my home life. A diff of two files is essentially a composite view that shows what is different between two files. It's commonly used between an earlier version and the current version of a file.
The common usage scenario for a diff is this: say you have a file that contains the code for a class in your program. Something about that file changed since last Monday. What changed? Call up a diff between the current version and the version that existed last Monday. (Since you have access to a source control system, you have access to every version of every file in the product.) Now you know exactly what changed. A line toward the bottom was removed, so it's highlighted. An entire new method was added, so it's highlighted. Also, a couple lines were commented out, and a couple were reordered. You can easily tell what changed last week. It turns out that that one of those lines that was commented out is the problem—it should have been the line above.
Here's a screenshot that should illustrate things to the unfamiliar.
I knew diffs existed many years ago, but having rarely used them, problems that can easily be solved by them were usually solved in a less efficient way. The most recent time that I used them at home was when I was tweaking Oblivion's settings for better performance. I made a backup copy of my configuration file, and then edited the real one. One of the settings I used made the graphics look pretty terrible, and I didn't remember which one. So, I called up a diff between the backup copy and the live file, and saw exactly what I had changed. It took a couple seconds. In the past, I would have made a backup copy, and then kept a separate file listing everything I changed, hoping that I remembered to update the list.
When all you have is a hammer, everything looks like a nail. But, some of the things that I thought were screws before really were nails all along. I just forgot I had a hammer.
One of the diff tools that I use is the free and open-source WinMerge. (At work I mostly use two unreleased internal tools that have more features.)