Danny Wilson's Bristol City stormed to the top of Division Two after a fine 3-1 victory over Cardiff at Ninian Park.

Cardiff have failed to beat Bristol City in any of their last 20 meetings after going down 3-1 at Ninian Park, City's eighth win in 10 unbeaten league visits to the Welsh club dating back 30 years.

The Welsh side led through Graham Kavanagh but three goals in four second-half minutes took the points across the River Severn, Scott Murray claiming two goals and Lee Matthews the other.

Stoke are second on goal difference after a 0-0 draw at Huddersfield and Brighton, third, were denied by a last-gasp equaliser at Blackpool.

The Seagulls, now unbeaten in 12 games, were 2-0 up through Lee Steele and Nathan Jones but Ian Hughes pulled one back for the Seasiders and Lee Collins made it 2-2 in time added on.

Brentford rarely have any joy at Tranmere and they have only one win in 10 visits to Prenton Park after going down 1-0, Jason Koumas the scorer extending Rovers' unbeaten run to five games.

Wrexham have not beaten Reading in any of their last seven meetings after going down 2-0 at home, Nicky Forster and John Salako the goal scorers for the Royals.

Wycombe's first visit to Loftus Road was a disaster with two men sent off in a 4-3 defeat.

Rangers led through Andy Thomson's 18th of the season, cancelled out by a Steve Brown penalty when Jermaine MacSporran and Danny Senda were shown the red card for violent conduct just before the interval.

Kevin Gallen and Karl Connolly put the home side in the driving seat but the Chairboys fought back with Dannie Bulman netting before Gavin Peacock restored the cushion.

An Andy Rammell penalty ensured a tense last 10 minutes.

Bottom-of-the-table Northampton had goalkeeper Keith Welch sent off for deliberate handball just before half-time against Oldham but held out until David Eyres made it 1-0 with 10 minutes to go.

Cambridge failed to score for the 11th time this season in the 0-0 draw with Peterborough while Bournemouth were blanked for the 12th time in their 0-0 draw at Wigan, only their second point in six games.

Strugglers Chesterfield took advantage of a Notts County side reduced to 10 men after goalkeeper Stuart Garden was sent off for deliberate hand ball after 57 minutes and ran out 2-1 winners.

Mark Innes scored for the Spireites and Nick Fenton levelled early in the second half. Mark Allott claimed the winner six minutes from time.

Colchester lost for the first time in five games, going down 3-1 at Port Vale who led through Ian Armstrong, Steve Rowland and Stephen Brooker before Karl Duguid pulled one back in time added on.