I've been trying to figure out how certain authors can introduce loads of characters and have the reader keep them all straight, while other authors produce characters that all run together, despite having different names and backgrounds. I have managed to come up with a few guidelines for discussion.
1) People can hold only 3-4 facts at a time in their head. So one strategy is to introduce your characters in small constellations.
In Prom Dates from Hell, Rosemary Clement-Moore introduces six people, the "Jocks and Jennifers", together as a unit, with one queen Jennifer and two sidekick Jennifers. They are defined by their relation to the group, and only later do they receive more differentiation.
On the other hand, in Hell Week, Clement-Moore introduces several (7?) sorority rush characters at the same time, naturally all female, and there's never enough face time to get them all descrambled. (This can work on the movie screen, since you can give visual tags and nobody cares what the actual name of the Die Hard terrorist in cowboy boots is.)
2) Give your characters tags, especially constellation tags.
A tag can be a relationship, a hobby, a visual cue, a consistent metaphor... literally anything that allows the reader to track the character. Thus, the three Jennifers in PDFH were Jennifer "Major" (Queen Bee), Jennifer "Minor" (sycophant) and Jennifer "Thespia" (actress). Jennifer Major is introduced in action in the first few pages, leading the female Jocks and Jennifers. Thespia is introduced -- where else? -- at stage practice. And so on.
The tag can initially be based upon the constellation that you used to introduce the character, especially where there are "natural" tags in that group. A small family has one father, one mother and one or two children, and no one will have trouble keeping them straight if the children are at all different in temperament or gender. A work group has a boss, perhaps a "kid" or "new guy", perhaps one character with some other special attribute (secretary, bruiser, the lone girl). A schoolroom has a teacher, principal, bright student, class clown...
Are these cliches? More like archetypes. Calling the concept of "father" a cliche is like saying the rules of physics or biology are cliche. Use the known psychology of the reader, to make life easier on the reader. It's your job.
3) Introduce important characters in characteristic action -- action related to their tags.
In Cold Fire, book 3 of her Circle Opens quartet, Tamora Pierce introduces twin characters one at a time, the first in a skating scene, the second cooking. She then goes on in the next scene to introduce the fire-fighting hero-antagonist of the book, giving him a major scene to himself as he rescues two children from a burning building.
On the other hand, the family of the twins is introduced as a group (father/mother/other kids/servants) by their relationships to the established characters.
4) Reserve each tag to that one character.
If your tag for one similar character is "actress", then you can never ever ever allow another similar character to be seen acting. If your tag is "choppy hair" then that had better not be a common style, and you had better not mess with that hairstyle until your reader is so familiar with the character that the reader would recognize the character blindfolded and dipped in butter sauce.
5) Reintroduce the character with the same tag in a similar context.
Whenever the character reappears, float that tag either explicitly or implicitly. Don't hesitate to parade the tag, but you can be subtle as time goes on. You don't have to say "bruiser", you can show him muscling open a coke machine. You don't have to have the whole constellation there, just at least one other person from it, or an object that will evoke it.
6) Reintroduce the character with the same tag in a different context.
If you can successfully put the individual character in a different context, and the reader can track his identity, then you have successfully created a character that is differentiated in the reader's mind.