I used to study for hours and hours, and got C's, D's, and the occasional F. The problem that i had was - whilst i was learning lots of stuff - nearly nothing that i was learning was on the actual test(s). If this is what you experience, i may have a useful suggestion: Keep track of how long your instructor spends on each 'topic', and how much work they do. Do they just talk about it, draw things on the board, distribute ready-made handouts to the students, use viewgraphs and an overhead projector... etc. Each of those is more work for the instructor, and nobody likes to do extra work - this applies to instructors too.
The time allocated for instruction is fixed. The school term is x days - and this is broken up into so many hours a day. Nobody can add time to the instruction schedule. All they can do is 'move time around' - so more time is spent on this topic or that. The instructor will allocate time to topics where they feel that the students need extra instruction time to fully understand the topic. I used to multiply the time spent by the 'work factor' involved [a measure of the instructor's work output]. As an example: If the instructor talks about something, their talk can be just a casual BS talk, somewhat organized, or really detailed and organized. I rated each of those a "1", a "2", or a "3". For drawing on the board, the ratings were "4", "5", or "6". For handouts, similarly: "7", "8", or "9". Viewgraphs, "10", "11", "12". Suppose the instructor first talks about a topic for 5 minutes in a somewhat organized way, then draws on the board in a reasonably organized way for 10 minutes. I would multiply the 5 minutes by "2" for a medium organized talk. This gives a total of "10". I then would multiply the 10 minutes spent on the chalk drawing (medium complexity) by 5 for a total of "50". Adding the two together, gives 10 + 50 = 60. This is the total for that lecture period on that topic.
Prior to an exam, i would take each of the topics, and add up each of the totals for each topic. For the one above, i would add the "60" to all the other totals from each time that the topic in question was brought up to the class. You will get a "grand total" for each of the topics. List the topics in order of decreasing 'grand totals'. This should give you a priority list of each of the topics in the instructor's mind. The higher the grand total, the more important that topic is in the instructor's mind - and that importance is the only one that counts, because the instructor is the one making up the exam, aren't they???
Decide how many questions you have time for - say it's an hour exam, and it takes about 10 minutes to adequately answer a question - if you know what you are doing. This means that you could address 6 problems (questions). For safety, take 8 or 9. Take the topics in the top 9 positions on the priority list, and learn everything about them. Study all questions that have been asked/discussed in class on those topics, and be prepared to answer and discuss all aspects of them.
With luck, you should be well prepared for the exam. I stared doing this about 60% of the way through graduate school, and the worst i ever did, was that i hit 72% of the exam questions. Several times (including the first time i did it) i hit the instructor 100% - i had every question that was on the actual exam on my 'sample' exam. The first time i did it, i didn't include any 'extra' questions for safety - so there were no extra questions on my sample exam. I basically had an exact copy of the real exam, one week before it was administered. I don't recommend not having extra questions - that was risky - but i got away with it that time. It took me 13 minutes to do the 1 hour exam. It took about 4 minutes to check all my work 3 times (which is my criteria - which i have to satisfy before handing it in - check the entire exam three times without finding any errors. If i find errors, i correct them, and start over with checking the exam the first time again.
I really think that i got my Master's degree because of doing this. Best of luck in your endeavors!!