Of course the simplest explanation of waterfall vs. header bidding is that in a waterfall, bids are called sequentially, and with header bidding, they are called in a single, unified auction.
To me, one of the main differences lies in real-time price bidding.
With a waterfall set up, a publisher would have to set up multiple tags, from multiple demand partners, in separate line items, with different rates, with different targeting, and with different passback tags. Once all that setup was done, those partners would then have to manage those tags and update rates and targeting and change the passbacks. It was a lot of work and required a full ad ops team, or for one VERY busy person.
In comes header bidding. Header bidding enables a one-time setup by the publisher, giving them real-time price competition by multiple demand partners in a unified auction. With the introduction of header bidding, really what changed with the waterfall setup was the ability for your demand partners to be able to put forth (and compete on) the price that they feel that the inventory is worth.
With a waterfall setup, all prices in the ad server are static and out of date. With the introduction of header bidding and the ability to have competition on penny increments, it changed who the big players were in the market and it made the biggest demand partner work harder and pay more to win an impression.