These are good points. I just want to add a few things from my own experience (not so much directed to you, but to whoever might read this as well):
What works for one class might not work for another. I think it's key that you understand how your professor might test you and apply it for any future tests/assignments you might have with them.
As you mentioned, definitely make good notes. I'd also recommend you try to stay 'active' when writing them. For example, something I often do is if I don't understand something, I will write a big "?" and a small note regarding what about it I don't understand. Or if a prof emphasizes a given point or you think of a potential exam question, I write EQ and what the question might be. For example, "EQ: Compare and contrast X and Y" or "EQ: Given X situation, know how Y might be affected!" Furthermore, if you find something in a given lecture relates back to other lectures or even any other classes you've had, make a note of that. I might just write, "Hey! BIOL 101!" By doing this, instead of just mindlessly making a transcript of what the prof is saying, you're actually THINKING about the material. And even if later, you go back and realize that the potential exam questions are stupid or there was no link to begin with...it's still encouraging you to think about it a little more.
When I study, I actually time myself. Once I stop to take a break (eg. eat, piss, surf the internet, whatever), I'll stop it. Even if you take a break for only 5 minutes or so, I'll still stop the watch. The reason why I do this is because it tells me how much time I'm actually putting towards studying. Plus, I find it pretty encouraging when I can study non-stop for 30 min => 45 min => 1 hour => 2 hours. I mean, definitely take breaks cause you don't want to destoy your soul :P, but the point here is to just show how well you might be using your time!
KNOW how you study best! For me, that means being at school, in a quiet room, with a giant table, with no music or anything. I get way too distracted at home, I can't concentrate with music or if people are chatting with me, etc. I often feel like people don't realize how much of a distraction some things can be...such as surfing the net or using your phone :P. I know of someone who never seems that motivated to study, but the few times I have studied with them, they're always checking their phone every 10 minutes. And I'm just thinking to myself, well, even if you don't enjoy studying all that much/not the best at it...your constant email checking can't be of much help either.
And don't forget to give yourself reasonable breaks + recognition for the work you do. I also did terribly for my first 3.5 years of school, but turned it around for the next 1.5. I decided to stay at school for a 6th year, but this past semester was absolutely brutal for me. I honestly think I was in a semester-long slump + just completely burnt out from the past years of school. As well, I started working in a lab as an undergrad (this was something I've wanted for a VERY long time) and just went all out in the first month. Looking in retrospect, that was a TERRIBLE idea. I was always so tired at the end of the day that I never had time to study, and even ended up withdrawing from a course. So point is, pace yourself.