I treat content knowledge and process knowledge differently. Most of my classes have involved content knowledge. Some are cumulative, and that makes a difference too.
With content knowledge, such as philosophy or the social sciences, when I read the material through the first time, I mark, highlight, and annotate with care and thought so that my notations will serve as a good review tool. At review time I can concentrate on the things I’ve marked.
I pay attention to what the instructor emphasizes and write down anything that amounts to guidance about the exams. Writing practice essays is a good strategy for me. So is finding an accommodating audience and trying to explain major themes and topics aloud. A review session with a few other serious students has been very helpful.
Coming at the material from different angles and working it over from a number of points of view helps to cement it, especially when I do it in writing. Creating lists and tables and filling in their contents by hand makes me process the material in different ways and see useful relationships.
With languages, it’s always the vocabulary that I have to work the hardest on, so flash cards do help. Grammar seems to come very easily to me.
With process knowledge I’d like to say that I practice problem-solving, which is what I ought to have done, but in truth I always just abandoned myself to chance. I haven’t taken a process-knowledge course in a very long time and most likely never will again.