Is it a viral vs. bacterial thing? Is there just more variety among types of flu than other diseases, so that this year's vaccines don't cover next year's flu?
The flu virus changes rapidly so that the current vaccine doesn't work against the new strains.
The way vaccines work is that they teach our immune system what to look out for. The vaccine contains bits of the virus but in a form that can't cause a proper infection, the body learns what to look for and next time before the virus can really get going the immune system kills it off first.
In the case of flu, every year it looks different enough that the targeting mechanisms of our body don't recognise it. Flu being a RNA virus frequently mutates until it is slightly different. This is called antigenic drift, the changing of the antigens or the parts our body recognises.
On top of that there's lots and lots of types of the influenza virus, that can not only infect humans but others which affect other animals. Occasionally the virus might combine with a random other strain making it completely new: an animal flu and human flu hybrid. These are the epidemics of swine or avian flu etc. This recombination is called antigenic shift.
So each year scientists predict which viruses will affect us this coming year and grow them ready for vaccines. Of course there's some of the old virus floating around looking for someone to infect, but those infected can't be infected by it again if the immune system is working.
What you call influenza isn't a specific virus which is always the same, but a virus that has numerous different strains. Flu virus is constantly alive on this planet, and there are numerous different types, such as the ones which infect humans, the ones that infect birds, and occasionally a virus that mutates to infect humans although it shouldn't as it infects birds only.
Viruses evolve very quickly. The strain of flu virus which was rampant last year definitely won't be the one to look out for this year. What scientists are doing is a very difficult job - they're tracking the progress of different flu virus strains and trying to make an educated guess about the strain or strains which might spread the most during the flu season. And then they come up with a flu vaccine which is a mix that targets the several strains that were identified as being the biggest threat.
It's a hit or miss kind of thing, and it's quite possible that the scientists get it wrong, or not necessarily wrong, but something happens in the virus evolution process that renders this year's vaccine useless.
Also, it's possible to get a flu vaccine and still get flu - if you happen to come in contact with a strain that wasn't targeted by the vaccine. Viruses evolve very very quickly, so vaccine isn't failsafe, virus can evolve in some other person, you come in contact with the virus and get infected despite being vaccined against the original strain.