The way I learned as a student was to read the material in the textbook the night before the lecture, this way the lecture was not about things I knew nothing about, and it made more sense and I already had questions I could ask. During the lecture, I took no notes, and focused on the lecture rather than trying to scramble to write things down.
Then, when I did the assigned problems, I made certain I understood completely the derivation of all theorems used. While working the problems, I tried solving them in the most general way possible, so that I would then look at the behavior of the solutions at the boundaries, leading to insights regarding the behavior of the formulas. I always made sure to study for at least 3 hours for each hour spent in lecture.