Homework is a waste of time in only two cases:
  1. When it is busy work.
  2. When it is "done" but not understood by the doer.

From high school through college, I noticed that homework helps most visibly for math classes. This was most apparent to me in Calculus IV which I had to take twice. The first time I took it, I started off religiously doing all the homework assigned, then later slacked off and was unable to fully catch up before exams. Because of this, I was only able to understand exam problems hardly and superficially. The second time I took the class, I did all the homework, and the exams, which used to seem next to impossible for me, were so damn easy.