The problem is most of the ads are loaded dynamically from third-party servers. It doesn't even have to be a bad ad, just wonkiness on the server that's (supposed to be) serving it.

I had an ad for a while that held up the page load for >20 seconds -- which might as well be forever in web-surfing years -- because their DB was saturated. No, the browser shouldn't have hung because of that, but it did.

And if something is bad with the ad, they can pull it before you're able to investigate.