If I visit a restaurant, and they only serve chicken, that's kind of limited. Now, they give me the option of beef or chicken. Ok, this is a decision I can make, and be confident in selecting. Now, what happens if they ask whether I would like northwestern chicken, southern chicken, grain fed chicken, or korean chicken? Huh? I'm not a master of chicken, just give me the best one.
We hit a point where I no longer have a strong opinion, and this is where my confidence drops, and I start to question myself. This means they've given me too much choice.
This isn't the same for everyone, someone out there knows their chicken inside and out, and they have a preference for one specific type. If you want to cater your restaurant towards those people then give them that choice. However, you'll be scaring away the average person at the same time.
For the same reason it's difficult to make an application for casual and advanced users. Pick your audience, and that'll give you some guidance on the appropriate amount of choice to include.