Delegates and events let one part of your game announce that something happened without knowing who is listening. A health system raises OnHealthChanged, and the health bar, the hurt sound, and the screen shake each react on their own. That decoupling is what keeps a growing Unity project from turning into a tangle of direct references.