It works much better in low bandwidth situations if UDP is also available because then things like "the user just closed this application, stop downloading this picture" can happen.
With TCP multi-megabyte buffers can end up forming and when you've shoved data into TCP there's no way to cancel sending it.