Marvel:
Patrick Stewart as Professor Xavier
Ian McKellen as Magneto
Kelsey Grammar as Hank "Beast" McCoy
Famke Janssen as Jean Grey
James Marsden as Scott "Cyclops" Summers
JK Simmons as J. Jonah Jameson
Tobey Maguire as Spider-Man
Elizabeth Banks as Betty Brant
Cliff Robertson as Uncle Ben Parker
Rosemary Harris as Aunt May Parker
Alfred Molina as Doctor Otto "Octopus" Octavius (was Octopus ever used in SM2?)
James Franco as Harry Osborn
Willem Dafoe as Norman Osborn
Randy "Macho Man" Savage as Bonesaw McGraw

Thomas Jane as Frank Castle
Kevin Nash as the Russian
Ben Affleck as Daredevil (He wasn't that bad really. Blame Fox for frakking up the film)
Jennifer Garner as Elektra Natchios (she wasn't too bad but they could have gotten somebody more exotic)
Terence Stamp as Stick
Jon Favreau as Foggy Nelson
Ioan Gruffudd as Reed Richards
Michael Chiklis as Ben " The Thing" Grimm
Chris Evans as Johnny "The Human Torch" Storm
Eric Bana as Bruce Banner
Jennifer Connolly as Betty Ross
Sam Elliott as General Sam Ross
Wesley Snipes as Blade
Kris Kristofferson as Wildon
DC:
Christian Bale as Bruce Wayne/Batman
Michael Caine as Alfred Pennyworth
Cillian Murphy as Jonathan "The Scarecrow" Crane
Morgan Freeman as Lucius Fox
Gary Oldman as Jim Gordon
Liam Neeson as Ra's Al Ghul (as we all know he is)
Michael Keaton as Bruce Wayne/Batman
Michelle Pfeiffer as Selina "Catwoman" Kyle
Danny DeVito as Oswald "The Penguin" Cobblepot
Jim Carrey as Edward "The Riddler" Nygma (he wasn't that bad really)
Uma Thurman as Pamela "Poison Ivy" Isley
Jeep Swensen as Bane (despite being poorly underutilised)
Christopher Reeve as Clark Kent/Superman
Brandon Routh as Clark Kent/Superman
Terence Stamp as General Zod
Kevin Spacey as Lex Luthor
Now should TV count:
John Wesley Shipp as Barry Allen/The Flash
Tom Welling as Clark Kent
Michael Rosenbaum as Lex Luthor
John Schneider as Jonathan Kent
Annette O'Toole as Martha Kent
Erica Durance as Lois Lane
And lastly Halle Berry was shocking as Storm. I agree that Angela Bassett would have been perfect. And Jessica Alba as Sue Storm is still terrible. Still wished that Rachel McAdams got the role.
Also I do think that Kirsten Dunst is still a lame Mary-Jane. Kate Hudson was silly to have turned down the role only to have starred in a movie that didn't do very well (The Four Feathers). I suppose she still don't regret it though. But I do think she would have been a better choice than Dunst.