Birmingham 1 QPR 0
Kevin Phillips claimed his fourth goal of the season to send Birmingham back to the top of the Championship table.
A poor first half was brought to life in stoppage time as great work down the left by Garry O'Connor saw him get to the byline and put over a low cross which Phillips tapped home (45).
Radhi Jaidi then had a header tipped over by Rs keeper Radek Cerny as Blues threatened to double their lead.
Barnsley 4 Doncaster 1
Ten-man Barnsley produced an astounding comeback to beat their local rivals.
Brian Stock opened the scoring from the penalty spot (9) after Tykes captain Stephen Foster fouled Lewis Guy and Darren Moore was later sent off (49).
But Foster equalised after Dennis Souza met Rob Kozluk's free-kick (54), Jamal Campbell-Ryce struck from range (60), Jon Macken fired home a third (73) and Iain Hume added a late curler (87).
Blackpool 1 Cardiff 1
A goal nearly five minutes into injury time from Alan Gow rescued a point for Blackpool at the expense of Cardiff.
Bluebirds midfielder Joe Ledley wasted two glorious first-half opportunities when he blazed over the crossbar twice in the space of two minutes.
Paul Parry (83) looked to have won it for the visitors with a neat finish, before ex-Rangers striker Gow rifled home from 18 yards to seal a point.
Charlton 2 Ipswich 1
Charlton rode their luck as the woodwork denied Ipswich three times.
The Addicks' Nicky Bailey drilled home a low free-kick (6) before limping off in the 13th minute, but Martin Cranie turned Jon Walters's cross into his own goal (34) to leave it all square.
Ivan Campo and Alan Quinn hit the crossbar for Town before Moritz Volz's own goal (60) settled it, and Richard Naylor was also frustrated by the bar.
Coventry 4 Southampton 1
Jay Tabb scored twice as Coventry romped to victory at the Ricoh Arena.
The midfielder met Leon McKenzie's cross with a bullet header (19), but Elliott Ward saw a dismal chipped penalty saved (27) before his flick-on set up the second for McKenzie (33).
Leon Best tapped in Daniel Fox's cross (47) and, though Drew Surman pulled a goal back (63), Tabb made the game safe from Freddy Eastwood's cross (87).
Norwich 1 Derby 2
Derby stretched their unbeaten run to six games with a win at Norwich despite keeper Roy Carroll being sent off.
The Rams took the lead when Rob Hulse headed in a Steve Davies corner for his second goal of the season (26).
The hosts levelled when Carroll was sent off for bringing down Leroy Lita and Sammy Clingan netted the resulting penalty (51), but Nathan Ellington drilled home Derby's winner (85).
Nottm Forest 0 C Palace 2
Crystal Palace earned their first away victory as Nottingham Forest remained rooted at the foot of the table.
Paul Ifill pounced to rifle his shot high into the net from the edge of the area (4) and Julian Bennett should have equalised but he saw his header bounce off the top of the crossbar.
Nathan Tyson missed a chance to level after the break and Shefki Kuqi wrapped up the win with a late strike (81).
Plymouth 4 Sheff Wed 0
Three goals in a 15-minute spell in the first half saw Paul Sturrock's Plymouth see off his former side at Home Park.
Argyle took a fortuitous lead when Mark Beevers stabbed the ball past his own keeper (15) and Paul Gallagher added a second from close range (25).
A swift break saw the hosts wrap up the points when Jamie Mackie turned in Rory Fallon's pass (30) and Marcel Seip headed home for a late fourth (90).
Reading 3 Burnley 1
Reading maintained their 100% home record this season after cruising to a convincing victory over Burnley.
Noel Hunt headed home Jimmy Kebe's right-wing cross for an early lead (4) before Marcus Hahnemann denied Burnley, tipping over Stephen Jordan's shot.
Stephen Hunt doubled the lead with a header (52) and Shane Long volleyed home Kevin Doyle's pin-point cross (64) before Chris McCann's consolation (89).
Sheff Utd 3 Bristol C 0
A brace from James Beattie inspired Sheffield United to their third win in a row as they swept past Bristol City.
The striker's thunderous volley in first-half injury time gave United the lead (45) before Matthew Kilgallon's looping header came off Liam Fontaine for an own goal after the break (56).
Beattie missed an earlier chance before heading in David Cotterill's cross for his second of the match (69).
Swansea 3 Wolves 1
Wolves slipped off the top as Swansea followed up their midweek win against Preston in equally impressive fashion.
Andrea Orlandi played in Jordi Gomez to open the scoring after just 26 seconds and, after Andy Keogh equalised (16), Scotland - who earlier hit the bar - struck after a one-two with Gomez (41).
Dorus De Vries brilliantly denied Sam Vokes before Scotland beat two men to fire home the Swans' third (57).
Watford 2 Preston 1
Jon Harley's first goal in over two years helped Watford to a comeback win.
Sean St Ledger swept home Neil Mellor's deflected cross (5) but Tommy Smith and Tamas Priskin carved out a chance for Harley to half-volley home (12).
Smith finished at the second attempt from Will Hoskins's throughball (21) before Stephen Elliott curled Preston's best chance of an equaliser straight at Hornets keeper Richard Lee.