History is a bit like the stack, although different. If you for example do an extrude you can with history edit the original curve and see the extrude update, things like that. And some things like polytweaks make most of the history useless. Also, rigging is connected through history.
Loads of undo-levels eat RAM too, btw.