Or rather, they know it, but only deep down in their subconscious, their lizard brain. Their conscious mind doesn't know, because you're asking them to pull specific things out of the nebulous cloud of the possible, and there's too many of the damn things in that cloud for them to know which ones map to what they want.
That's why they need developers. Developers know how to translate requirements into features. Users don't. And they shouldn't have to!
So if you ask them, what you get back tends to be:
- too vague ("it should be easier");
- pie-in-the-sky stuff ("it should whiten my teeth while I use it");
- or falling back on what they know, which is what they've had in the past ("bring back feature X").
If you want to learn what users want, you have to watch them use the product, pick up on their frustrations, and creatively solve them. Asking them what they want leads you nowhere.