Why is the date of lent different every year?

The date of lent is different every year because lent is calculated based on the date of Easter. Every year, the sun passes directly over the equator on March 20 or March 21 (spring or vernal equinox in the Northern hemisphere) and on September 22 or September 23 (autumnal equinox in the Southern hemisphere). These are the two dates of the year at which day and night are of equal length.

What has it to do with the date of lent being different every year? Easter follows the lunar (moon), not solar (sun), calendar and the date of Easter is set as the first Sunday after the first full moon after the vernal or spring equinox. The first full moon after vernal equinox can occur between March 22 and April 25. That is the reason why lent falls on different days every year. In other words, Easter always falls between March 22 and April 25 and the first date of lent, which is Ash Wednesday, begins 46 days prior to those dates.