Why do I have to get a flu shot every year when other vaccines I can just get once?

Flu changes. The influenza virus mutates as it travels around the world each year. It arrives back changed enough that our immune system does not recognize it from the last round (or shot) this means we have to get vaccinated each year for the new "strains" of flu since our body perceives it as a new virus. Some years the virus changes more than others, leading to worse epidemics if the shot is rigged wrong.