Plain version: waiver is giving something up on purpose; estoppel is being stopped from going back on your word after someone relied on it.
Waiver: the voluntary and intentional giving up of a known right. The focus is on the party that gave the right up.
Estoppel: a rule that stops a party from contradicting its own statement or conduct when that statement or conduct led another to believe something and act on it. California Evidence Code §623 states this rule. The focus is on the other party's reliance.
Example: an adjuster tells an insured in writing that her late proof of loss will be accepted. Relying on the letter, she files after the deadline. Estoppel prevents the insurer from then denying the claim as late. Do not confuse these terms with concealment (failing to disclose a material fact) or an endorsement (a written change attached to the policy).