Are there any tricks to remembering proofs of mathematical theorems? Is there a way to quickly and thoroughly remember theorems? 
For example, proofs of the mean value theorem, or Rolle's theorem. Having to remember all of them off by heart has been quite tedious. Understanding helps you get the basic gist of it, but there's always some integral part of the theorem that gets left out.

Disbelieving the theorem is a good way to start, I find. Every time a statement is made, try to break it. Ask "what if $x=-1$?", or whatever seems likely to make an equation or an inference break down.
After all, the whole point of a proof is that the thing wasn't obvious to start with, which is why it needed proving. So put the proof to the proof.
Once you have had a good fight with the thing, you are more likely to remember how it defended itself from you. For instance, rather than trying to memorize an initial condition, you say to yourself, when one of your devious attacks fails, "Ah, that is why it insisted, at the beginning, that $a$ had to be unequal to $b$".
In the same way, believing that a given step is illogical, and then eventually understanding that it is logical after all, is more likely to burn it into your brain than trying to remember the words would.
The other technique is stretching. For instance if a theorem is about integers, will it work for rationals? Or for Gaussian integers ($a+bi$)? Stretch it and see. Occasionally a generalisation really does exist and was left out for pædagogical reasons; more often, the generalisation will fail and teach you a lot by failing.
