How to learn a great number of theorems by heart? Imagine you have ten definitions and you want to learn them by heart. It is easy - definitions are somehow unique. But, imagine 40 (60,100,1000) theorems that all look somehow similar and are all important. How would you learn them by heart? What the word "learn" mean here for you?
Of course, you can learn them by numbers, and everytime I will say "Theorem 147" you will say the right one. But somehow it is not right. We do not call people with their birth date, do we?
If so, how would you categorize the (limited number of) theorems? What would be your approach to learn tens of theorems by heart and still clearly distinguish between them? What makes a theorem unique? Could you draw a graph or a tree of theorems? 
 A: "Memorization" is not the best way to try and learn theorems. And furthermore, the number of theorems you know is not actually that important. The knowledge of the proofs of theorems is infinitely more useful.
If you try to prove some of the theorems that you need to know, (or read a thorough proof, following all of the steps) that is much more effective than trying to memorize it. The beauty of mathematical theorems is that, even if you forget one, you can "reinvent" it by arriving at it again through a logical argument. Thus if you forget the exact wording of a theorem, you can most likely deduce it again from what you already know.
So my answer to you is that you should not try to learn them by heart. Try to understand them. You will likely even develop an intuition of your own about the proofs of theorems, and the proofs will come more and more easily to you the longer you continue to do this.
Happy mathing!
A: There is really no point in memorizing $1000$ theorems.  For one thing, different expositions of the same subject will organize the theorems somewhat 
differently.  A particular theorem in textbook A might correspond to parts of several different theorems in textbook B, or might just be an exercise in textbook C.
A: Two things I think are important here:


*

*Mathematics is/has a language. Learn the language by heart and then you will be able to formulate by heart a lot of sentences (i.e. propositions and theorems) without having to memorize almost anything. A lot of theorems that you're supposed to learn by heart are just one idea, once you're able to formulate this idea in the correct mathematical language you're almost done.

*Try to teach the theorems you want to memorize. And try to teach them in the most simple way you can. This will certainly clarify to you what you know and what you missed of the proofs. After one or two complete attempts you should be able to demonstrate the theorem by heart.  
