Portsmouth and Coventry were both relegated from the npower Championship after losing their penultimate games of the season.
Pompey had home advantage against Derby but went down 2-1. Jake Buxton put the Rams in front before Luke Varney levelled only for Steve Davies to restore the lead from the penalty spot.
Coventry, meanwhile, suffered a humbling 2-0 reverse to already-relegated Doncaster Rovers. A 0-0 draw appeared to be on the cards until the last 10 minutes, with James Hayter converting an 81st minute penalty following Richard Keogh's red card and Simon Gillett netting just before the close.
Already-promoted Reading claimed the title as they drew 2-2 with Crystal Palace. The Royals had Jason Roberts sent off on the stroke of half-time with the score at 1-1 after Wilfried Zaha's 14th-minute strike and Kaspars Gorkss' swift equaliser. Reading went ahead through Adam Le Fondre but were pegged back by Glenn Murray 16 minutes from time.
Merouane Zemmama struck a second half winner as Middlesbrough came from behind to secure a 2-1 victory over promotion-chasing Southampton to keep their npower Championship play-off hopes alive.
Blackpool confirmed their place in the play-offs with a decisive 4-0 win over Burnley. Stephen Dobbie, Gary Taylor-Fletcher, Stephen Crainey and Nouha Dicko were the scorers.
Ashley Barnes' 84th-minute leveller for Brighton prevented Birmingham joining the Seasiders in the play-offs - at least mathematically - but their goal difference of 25 means they can already make plans for the promotion scrap. Substitute Nathan Redmond had earlier put Blues in front.
Cardiff dropped to sixth after a 1-1 home draw against Leeds in the early kick-off. Joe Mason's opener was cancelled out by Lucciano Becchio in the 73rd minute.
Hull moved into seventh with a 2-1 win over Nottingham Forest but cannot catch the top six while Bristol City defeated Barnsley 2-0, Cole Skuse and Jon Stead (penalty) on target.
An Andy Keogh brace and a Liam Trotter goal scored Millwall a 3-0 victory at Ipswich, while Peterborough drew 2-2 with visiting Watford. Lee Tomlin gave Posh the lead with a 14th-minute spot-kick only for Troy Deeney (26) and Sean Murray (48) to turn the tables. Paul Taylor rescued the point in the 54th minute.