In principle caps help with oversubscribing. If you want to use a 10GBit/s uplink to serve 5000 people with 100MBit/s each, you won't saturate your uplink nearly as often if you add a data cap.
Of course that's not all that different from restricting bandwidth, just that you are restricting average bandwidth while allowing for some burst. Still violates the spirit of having fast bandwidth, unless the caps are quite generous.
They do help push people to use less, but for places like Comcast I see data caps as just a revenue stream increaser. The entire company strategy seems to follow this approach.
Of course that's not all that different from restricting bandwidth, just that you are restricting average bandwidth while allowing for some burst. Still violates the spirit of having fast bandwidth, unless the caps are quite generous.