Today, my family were discussing the difference between which and that. I looked it up in Strictly English by Simon Heffer. We found it very helpful. This is what he says:
Perhaps the most common mistake of all with pronominal usages is the misuse of which and that as relative pronouns. It is probably not an exaggeration to say that almost everyone believes they are in most contexts interchangeable. They are not. The two sentences “the dog that was run over belonged to Mrs Smith” and “the dog, which was run over, belonged to Mrs Smith” say different things in two quite different ways. The first suggests that there were a number of dogs, and the one that happened to be run over belonged to Mrs Smith. The second supposes that there was only one dog. It happened also to be run over, which (unfortunate though it may be) is not the point of the story. The point is that it belongs to Mrs Smith. That defines; which is parenthetic, or non-defining. If one is having a conversation with another about the merits of various cars, and one wishes to make the point that the car one used to own broke down, one would say “the car that we used to own broke down”, implying that cars one did not own did not break down. If one says “the car, which we used own, broke down”, one suggests that the main point one is making is that the car broke down and, incidentally, one used to own it. The reverse also applies. If one says “the coin that I found in the garden is valuable”, one implies that one has found coins all over the place, but it is only the one found in the garden that is worth anything. If that is the only coin one has found, and one wishes to stress its value but provide the incidental information that one found it in the garden, then one must say “the coin, which I found in the garden, is valuable”.