I have attended several different colleges, and my kids have all attended different colleges (than the ones that I've attended) and from that sample we discovered great variation in both the quality of the teaching and the focus of the teaching. From our limited data set (3 private liberal arts, 1 private "top ten", 3 different community colleges) the small private liberal arts colleges all had some classes that were taught by professors who cared that the students really understood the material, the community college classes were mostly taught to the exam, and my experience at USC was the big 'survey' classes (like EE101, CS203, etc) were generally taught to the exam (specific learning skills were 'taught' in the lab sessions) but the more specialized classes (like EE450 engineering calculus) were more focused on developing skills at using the material in your future life.
Bottom line is that it is really hard to generalize about colleges because colleges can be so different.