A good teacher should
- be able to figure out when a student's understanding becomes better than his own to recommend some reading or to pass the student on to a more knowledgeable teacher
- develop individual approaches for gifted students (say, emphasizing theoretical vs problem based depending on the student)
- be realistic in estimating the impact of his teaching work on students, and not be lazy to repeat important things again and again
- have enough "infectious enthusiasm"; without it any efforts will be pointless
(clearly there's much more, but that's something that comes to my mind right away)