If ammo is stored in a temperature controlled environment it will last indefinitely.
The reason you see some surplus ammunition (Persian 8mm, etc) with really bad results (hangfires, misfires, split cases) is because it was not stored in environmentally friendly conditions. (Persia... very high temps!)
I have shot US GI 45 ammunition manufactured in 1941/2 as recently as three years ago, every round went bang, and it was some of the best 45 ammo I'd shot in recent memory. Great brass.
I have shot 1970's era surplus from Switzerland. Great ammo. Some of the most inherently accurate factory ammo I've ever shot, bar none. No problems.
I have shot 22 LR manufactured last year by Remington and Federal, with 1/10 misfires (or more), noticeable low powder charges sending rounds 6" or more off target, and monster 5" groups at 50 yards out of a match 10/22 (Eley, by comparison, holds sub .5 MOA).
I witnessed, personally, a few rounds of Lake City 5.56 factory ammo *hangfire* at a high power match earlier this year. Mfg 2012.
I've got reloads in the basement from 1998 that I made, which would (and do) fire just fine when I get them out and dust off the boxes.
I have reloads my family members have made, going back to the mid 1960's, which all fire just fine. (I inherited two uncle's reloading stuff). Some of my Uncle Joe's 38 special & 357 rounds (dated 1968, after he returned from Vietnam), are some of the most accurate 38 I've ever shot. Old guy must have known a trick or two not in the books.
I have primers dating back to the late 60's early 70's that still shoot fine. Powder that is 50+ years old, still burns fine with no overpressure signs.
If stored in good temperatures, in airtight containers, powder won't go bad. Primers? Heck like I've said, I have some oldies, and they all go bang just fine.
People that worry about ammo that is 3-4 years old need count their blessings, if that's the worst thing they have to stress over.