When is Easter?
Today, is the short and not very helpful answer.
The longer, more useful answer is:
Easter is always the first Sunday after the first full moon after the vernal equinox.
This explains why it is never the same from year to year. The calendar date of the equinox will only move by a day or so, but the timing of the next full moon can vary by as much as 29 days.
There is an interesting page about the history of this calculation on this page.