It is well known that on Easter we celebrate Jesus' resurrection, but every year it is held on a different date, whereas Jesus' birthday—Christmas—is celebrated on the same day every year. So why is the day we celebrate Jesus' resurrection different every year when Christmas is not?
The date of Easter follows similar rules as the date of Passover, and is determined using those rules because of that tradition. (The death of Jesus on that day is significant because of his connection of his death to the sacrifice of the passover lamb.)
In the western church, Easter falls on the first Sunday after the first full moon after the nominal northern-hemisphere vernal equinox. (I call it nominal because it's considered to be on March 21, rather than at the moment of the astronomical equinox.)
In the eastern church, it's based on the old Julian calendar, and so sometimes is on a different date. Hopefully somebody who understands this can contribute.
In Lutheran Christianity, the date chosen for celebrating Easter is the archetypal adiaphoron, or a good example of a thing that doesn't matter. The reformers considered that it was more important to go along with the rest of the Christendom of the time in choosing this date, than it was to somehow get the date "right."
Easter was traditionally a fertility rite in spring among pagan cultures. The name even comes from a pagan goddess. Since fertility is connected to the cycle of the moon, when this festival was converted into the Christian tradition they followed the same lunar observances.
Certainly, later Christian doctrines have established their own reasoning for the tradition, but the Easter festivals predate Christianity.
Christmas being the birth of Jesus coincides with the winter solstice (see Yule), and most ancient cultures had a winter solstice festival. This is the time when the sun begins its return and it's possible that this was adopted for its symbolic significance.