Cardiff ended a 51-year wait for promotion to the Barclays Premier League after a 0-0 draw with Charlton.

Malky Mackay's class of 2013 had goalkeeper David Marshall to thank for a string of fine saves to keep out the in-form Addicks before the final whistle sparked memorable scenes in the Welsh capital 53 years to the day since they last achieved promotion to the top tier.

Craig Noone hit the post as Cardiff attempted to mark their big day with victory, but as it was they go into the final three games of the season 13 points clear of third and seven points ahead of Hull in second.

At the other end of the table, Bristol City became the first side to have their relegation confirmed after a 1-0t home defeat to Birmingham thanks to, Wade Elliott's effort.

Hull remain six points better off than Watford in second place as both sides lost to unfancied opponents. Kevin Doyle handed Wolves a 1-0 win over the Tigers with a 55th-minute strike, a result that also lifted Wanderers out of the relegation zone and the Hornets were beaten 1-0 by Millwall after Shaun Batt netted seven minutes from time.

Leicester returned to the play-off places, replacing opponents Bolton in the top six following a hard-fought 3-2 win. David Ngog and Chris Wood exchanged penalties in the first half before Lloyd Dyer and Darren Pratley made it 2-2 and Jeffrey Schlupp then won it for the Foxes 11 minutes from the end.

Huddersfield dropped into the bottom three as fellow strugglers Blackburn claimed a 1-0 win - former Terriers hero Jordan Rhodes scoring the winner against his old team. Barnsley also fell a place to second bottom after Derby grabbed a last-gasp 1-1 draw, while Crystal Palace were stunned 3-0 at Ipswich.

That allowed Brighton to go fourth on the back of a 0-0 draw at Peterborough and Nottingham Forest's play-off prospects took a hit as they were beaten 1-0 by Middlesbrough. Mustapha Carayol was the Boro match-winner three minutes shy of half-time.

Elsewhere, Rudolph Austin scored the only goal of the game as Brian McDermott recorded his second win in as many games as Leeds manager against Burnley. Sheffield Wednesday drew 0-0 at Blackpool, with the sides three and four points clear of the drop respectively.