Why do I need to take yearly flu shots?

Change. Unfortunately the immunity triggered by the vaccine is not life long. It may wear off. In addition, the flu strains may change each year requiring a different vaccine from the year before.
Different strains. Each year there are different strains in the flu shot so you need one each year.