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

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 City in second.

At the other end of the table, Bristol City became the first side to have their relegation confirmed after a 1-0 home defeat to Birmingham City 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 Wolverhampton Wanderers a 1-0 win over the Tigers with a 55th-minute strike, a result that also lifted Wolves out of the relegation zone and the Hornets were beaten 1-0 by Millwall after Shaun Batt netted seven minutes from time.

Leicester City returned to the Play-Off places, replacing opponents Bolton Wanderers 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 Town dropped into the bottom three as fellow strugglers Blackburn Rovers 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 County grabbed a last-gasp 1-1 draw, while Crystal Palace were stunned 3-0 at Ipswich Town.

That allowed Brighton and Hove Albion to go fourth on the back of a 0-0 draw at Peterborough United and Nottingham Forest's Play-Off prospects took a hit as they were beaten 1-0 by Middlesbrough. Mustapha Carayol was the Boro matchwinner 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 United manager against Burnley. Sheffield Wednesday drew 0-0 at Blackpool, with the sides three and four points clear of the drop respectively.