Greetings...
Well, first of all... congradulations on having a nice pool of players to choose from.
With time, some players blossom and become great players. But unfortunately, sometimes some players just never seem to bloom. Now, isn't it the job of the DM to know the rules? More so than your average player? As a GM I think it's our job to know the rules, and to know what a character's options are when it comes to combat. After all, if you have a player playing a wizard sitting there with a Scroll of Knock and there is no rogue in the party. Who's fault is it that the player was told at one time what the spell does, or that they've read the description and they've completely forgotton. Or that they just are having a momentary lapse of reason? Well, theirs of course. After all, we can't play player's characters for them. They have to put a certain amount of effort into the game.
Now, of course you can make things easier for players. Such as myself, I've been working on a list of DM Screen Sheets and Tables. A compliplation of various information that would be nice to have at my fingertips, and then I'll probably revise it to take out the tables I don't use. I wonder if there is a list somewhere out there of 'Conditions', or someone out there has done the same sort of thing that they are willing to share... Anyway... Another thing I do for my players, especially the newer players, is I tend to also give them a sheet that contains the information, along with the description of any spells they have. Also, if they need it, I'll also print out descriptions of skills or of feats or special class abilities that they are particularly iffy on. Putting them into the player's character sheets (I usually keep a copy of the character sheets). It's a habit I got into when I was running a game online. I found it easier to just keep a sheet of spell/feat/abilities descriptions so I don't have to go looking them up everytime I wanted to check something.
True enough that I think only experienced players really know how to play spellcasters well. Especially in a game like D&D where you have the Vancian spell system. If your players don't have good spell selections. Perhaps you could address this by either showing the player in-game with the use of a NPC spellcaster that has more useful spell selection. Or you could also suggest things and talk to the players out-of-game.
Now it very much might be that in your game the character that has the best advantage in most situations is the fighter. If a player told me that, I would be more conscious of the fact that maybe I'm not doing everything I can to place the party into situations where the Rogue or the Cleric or whoever isn't getting their chances to shine in the limelight. Throwing situations where the rogue is going to have to do something like climb the walls, a la Prince of Persia or Tomb Raider. Or throw an overwhelming number of undead at the party, or throw undead reneforcements so that the cleric gets to do some mass-turning. Or throw a bone to the ranger, and have him have to deal with some tracking, or survivial situations where he has to find food or water for the party.
I agree with you that most classes are at least as good as the fighter if played well. But I would also go as far as to say that a good player is one who looks for opportunities to make their character shine. Yeah, it's hard to get players to do some homework before a game. I've tried coaxing my players into doing a bit of research (especially for my modern era games where I've based things on information that can be gotten from the internet), or suggesting that players re-read things like grappling rules. But we all know that too much like work, and some people like to do it...some people don't. I can't blame those who don't go out of their way to do out-of-game homework to prepare of the game.
In my experience, really... parties & players either come together, or they don't. If it's a good group, and a good campaign... the players tend to step up and do what they need to do to make the game better for everyone. Or they don't. My first and foremost suggestion is. Do the work you need to do to organize and run the game well. Make sure the players are aware of the input you put into the game. If that means making the occational print-out, map, drawing, whatever... it shows that your putting effort into the game, and not just winging it. After all, why should the players go out of their way to put effort into the game, when the GM is only putting the bare minimum effort into the game?
You want to get the players in your game to be more knowledgable about spells? Well, you could always 'test' them on their knowledge. Have the party meet a sphinx that asks them riddles, to which the answer are spells they should know. Or have them tested by their magick guild masters, and not let them use Knowledge Arcana to determine the answers. "Tell me, apprentice. What spell would you use to open a locked door? -- Fireball? I think not." *Mage proceeds to cast fireball at the apprentice.*
I'm of two minds when it comes to players not knowing the rules. The first is, yes... it's nice if all the players know the rules, or at least the rules that pertain to their character. The second is that players, and I find this especially true of new players, can tend to be more creative and think outside of the box when they aren't thinking about what manuvers and special abilities their character has to suit the situation. That somehow the more you know about the rules of the game, the less creative people are. 'So, I can't pick the lock, bashing won't work, and no one can cast Knock. I guess we can't open this door then!'
I don't mind it when players come to me and say, "Well, I don't know the rules that well..." -- That's fine. I'm the one who needs to know the rules. The player can always ask me, "Well, what are my options here?" Players who are constantly asking, or have to be told what die to roll for attacks, saves and the like... well, most of them, in my experience, are not comfortable with the game yet. You need to do something about that. Give them a Post-It with a list of all the rolls that they need to do, and what dice they need for it:
Rolls
Attack: d20 + attack/weapon bonus (dagger: d20+4, crossbow: d20+3, unarmed: d20+3)
Damage: 2d6 + strength bonus (2d6+1)
Saves: d20 + save bonus [will, fort, ref]
It's easy enough for you to know that you have to take the attack bonus from here, and add the stats because of the magical sword from there... and because the character is fighting in complete darkness...blah...blah...blah... it can get confusing and daunting for players. Making it easier for them isn't going to be a bad thing.
If your players don't become better for your efforts to help them make better players... well... either suggest they play something a little easier... or kick them out of the game and pick another from that 30+ player pool. *smirks* But seriously, killing off the players for their inneptitude is something that can backfire. The game stops being fun as soon as you become branded as a 'killer DM' and you players don't want to play with you anymore.