If a DM has to restrict a wizard in such a fashion in order to challenge him, that's a problem with the DM, not the wizard.
I think that that's actually a very fair way to challenge a wizard. Wizard is way too powerful when he gets every spell he needs. On the level of destroying all but the most highly powered campaigns, sometimes.
Back in 2.0, the wizard had to get a spellbook/scroll or a library to research spells. It's often hard to get those things. Also, priests had a much smaller basic spell list, and a much larger domain list. They got 1 domain, and they got to spontaneous cast from their list.
When you compare the two of these to the way 3.5 spellcaster classes work, I'd have to say that these two are better balanced.
I'm not anti-high powered, at all. Far from it. But I think that if the DM makes the wizard choose his spells in such a fashion, that it's a fair way to balance the wizard. Not to mention that it can A) change the feel of the campaign to be much lower power (if you like that), and it can be extremely important in the case of fighters and monks in the party.
The DM should, of course, TELL the players that they'll be doing that. As long as the players and the DM agree to something, then it should be pretty cool.
No, I don't let wizards get whatever spells they want.
No, I don't let fighters buy whatever gear they want.
This isn't "restricting in order to challenge the player". This is doing your gorram job as a DM.
When I DM, I let my players make a wish list, and some of that gets parsed out along with random treasure. This is to curb cherry picking and keep game balance (for encounters and
within the party) within my control. I like high power as much as the next guy, and I don't even consider myself anti-caster, but I'm definitely anti-letmyplayersdowhateverthehelltheywant.
This is how I view "buying spells" and to a lesser degree buying weapons/armour... You can't walk into a walmart and buy a machine gun. I'm sure you can find someplace/someone that will sell you one though, but even then it'd be tough to find one customized to your exact liking. Want a bazooka? Well I don't think that connection of yours who sells guns from the trunk of his car will be much help, but maybe if you work up the chain you'd luck out and find yourself a heavy arms dealer, but you're not going to find him in a truck behind the convenience store. Still not happy with those RPGs? Well there are options out there, but you're into the big leagues now and you need not only the resources but some serious chutzpah before those guys will even talk to you, let alone even let you know of their existence.
My point here is that the bigger and more destructive (or game balance affecting) the toys, the more you need to work to get it. I hate
hate hate the magicmart mentality. Where the hell is the responsibility and accountability in your game world?
"Hey shopkeep, can I get a couple scrolls of cloudkill and a dozen arrows of human slaying"
"Sure thing. What's it for?"
"oh, uh, gophers... yeah, gophers"
"heh yeah those buggers have been tearing up my yard too. What about those arrows?"
"uh... were-gophers?"