Start here. This is the direct spoken answer to practice first.
Why this question matters
Hydration bugs are uniquely full-stack frontend bugs: the server rendered one thing, the browser rendered another, and React has to reconcile the difference.
A hydration mismatch happens when the HTML rendered on the server does not match what the client renders on first load. Common causes include reading window during render, using dates or random values directly, rendering different auth or theme state on client and server, locale differences, and data that changes between server render and hydration. I would reproduce it, inspect the warning, and compare the server output with the first client render inputs.