Robbie Dale's first-half double had Blyth Spartans dreaming of another FA Cup upset before Championship side Birmingham battled back to snatch victory in a third-round classic at tiny Croft Park.

Part-time barman Dale served up a pair of delicious finishes towards the end of the first period as the Evo-Stik Premier underdogs threatened to write another famous chapter in their storied FA Cup history.

But a one-sided period at the start of the second half shattered the Northumberland club's hopes as Lee Novak narrowed the deficit before two strikes from former non-leaguer Wes Thomas nudged Gary Rowett's men home as 3-2 winners.

The visiting Blues must have known they were in for a battle when their arrival at the 4,400-capacity stadium was greeted by a horde of home fans in Spartans warrior outfits, and they could not have looked less impressed by the bone-hard and bobbly pitch.

Blyth's cup pedigree alone dictated they were anything but beaten even when 3-2 down, and Dale went close to completing a hat-trick in the 65th minute when he was played into the left side of the box by Daniel Hawkins but fired wide.

Substitute Danny Parker headed wide in the dying minutes, then Daniel Maguire bustled through the middle and blazed a shot over the bar as the home side went down fighting.

In the day's other games, Jelle Vossen and Daniel Ayala got on the scoresheet as ten-man Middlesbrough beat Barnsley 2-0. Adam Clayton saw red for 'Boro after 77 minutes, but Ayala's goal in the 84th minute settled nerves.

Zach Clough's goal, scored on his debut, proved decisive as Bolton beat Wigan 1-0. The 2013 Cup winners were unable to find a leveller, leaving Neil Lennon's side to advance.

Swansea were also among the goals at Tranmere as the Premier League side ran out 6-2 winners at Prenton Park.

Nathan Dyer's 34th-minute goal was all that separated the teams at half-time but Tom Carroll and Modou Barrow, with his first Swansea goal, extended that to 3-0.

Max Power pulled one back, and Cole Stockton reduced the deficit to two again after Bafetimbi Gomis had scored, but Wayne Routledge and Gomis added late goals.

Brighton received five yellow cards in their game against Brentford - the Bees got two of their own - before Lewis Dunk and Chris O'Grady scored to give new manager Chris Hughton's side a 2-0 victory .

Michael Harriman's goal for Luton Town was not enough in their the all-League Two tie, as his side could not make up the two-goal deficit against Cambridge after strikes from Robbie Simpson and Ryan Donaldson had put the home side 2-0 after an hour.

Jóhann Berg Guðmundsson scored Charlton's goal as they lost 2-1 to a Chris Taylor double for Blackburn. Yoni Buyens was sent off in the 72nd minute for Charlton.

Chris Martin's 93rd-minute penalty prevented a major upset by securing a 1-0 win for Derby over Conference Premier side Southport.

Fulham and Wolves played out a 0-0 draw at Craven Cottage and require a replay to see who advances.

Jonathan Hogg was sent off in the 90th minute as Huddersfield sought, unsuccessfully, to recover a 1-0 deficit against Reading. 

Ricardo Fuller and Billy Knott both scored twice as Millwall and Bradford played out a 3-3 draw, Scott McDonald and a Sid Nelson own-goal provided the game's other scores.

Paul Gallagher bagged an all-important brace as Preston beat Norwich 2-0 to advance.

Peter Vincenti scored a penalty as Rochdale heaped pressure on Nottingham Forest boss Stuart Pearce with a 1-0 win.

Yann Kermorgant scored twice, to add to strikes from Ryan Fraser, Junior Stanislas and Shaun MacDonald as Bournemouth trounced Rotherham 5-1, Richard Brindley having opened the scoring for Rotherham.