League Two Bradford will take a two-goal lead into the second leg of their League Cup semi-final after beating top-flight opponents Aston Villa 3-1 at Valley Parade.
Nahki Wells opened the scoring in the 19th minute from close range and the ground was jumping on 77 minutes when Rory McArdle headed home at the near post.
Andreas Weimann looked to have put a slight dampener on the evening by pulling one back with eight minutes left only for Carl McHugh to crash in a header two minutes from time amid incredible scenes.
Bradford have only reached the last four of a major cup competition once before, when they beat Blackburn 3-0 in the 1911 FA Cup before going on to lift the trophy.
The second leg is at Villa Park on Tuesday January 22.
It was a fast start from Villa, who left weekend goalscorer in the FA Cup Darren Bent on the bench. Charles N'Zogbia was especially lively, holding off a challenge to fire in a hard shot that Matt Duke parried at the near post in the sixth minute, and Bent's replacement Christian Benteke put a couple of free headers from corners over the bar.
On 13 minutes Benteke lurked in behind and looked to finish inside the near post but the excellent Duke was down to parry.
It was a nervy start from Bradford, who have already eliminated Premier League sides Wigan Athletic and Arsenal from the League Cup this year, but they slowly grew in confidence. Former West Ham attacker Zavon Hines refused to give up as Joe Bennett looked to shield a ball out and won a corner, although he had his hands on the Villa man's back.
Valley Parade soon exploded: when the set-piece was headed away by Benteke, Hines volleyed into the floor and back into the box and the ball was deflected to Wells who finished inside the far post. The Villa defenders wanted an offside flag, but Wells was clearly level.
Shay Given, who kept his place ahead of regular No.1 Brad Guzan following the 2-1 win over Ipswich, was forced into a save from Hines as he tricked his way into the area from the right and fired an excellent strike to the near post.
Bradford, who were the better side in the opening 45 minutes, went close again when Fabian Delph cleared a James Hanson header off the line.
With half-time approaching Hanson headed down and over from a Hines cross and soon after Villa could well have been level when N'Zogbia wormed his way to the right byline and pulled back to give Gabriel Agbonlahor all the time in the world to shoot - Duke pulled off a fantastic block.
Villa attacked furiously in the second half. Barry Bannan crossed from the left and Benteke forced another wonderful save from Duke with a diving header from close in.
City were again opened up to allow Bannan to find Agbonlahor, whose volley from 10 yards out was saved again by an unsighted Duke.
After replacing Agbonlahor on 57 minutes, Bent volleyed an awkward dropping ball just over following a clever flick-on by Benteke; then after the ball squirmed from Duke's grasp as he stopped an awkward shot, he was embarrassed to head over from two yards. It seemed easier to score.
Ten minutes later it was 2-0. Nathan Baker was criminally slow to react to a half-cleared ball, allowing the dangerous Wells to nip ahead of him and feed the ball back out to Gary Jones, who had just taken a corner. The veteran midfielder's ball in was perfect for McArdle to arrive at the near post - and Given had no chance.
A minute later Hanson struck the bar with a header from 10 yards out - and it looked like Bradford may rue that one when Villa scored five minutes later.
Benteke flicked on for the umpteenth time and Weimann latched on to the ball in the box to finish past Duke. He was caught by the keeper afterwards, but battled gamely on.
The home fans were watching the clock, hoping desperately to hold out for a lead to take to Villa Park.
Their prayers were more than answered when, from a corner, McArdle's central defensive partner McHugh sent a thunderous header inside the post after leaving marker Benteke for dead.
Should they reach the final, they will become only the second fourth-tier side to do so, after Rochdale in 1962.
MAN OF THE MATCH
Matt Duke (Bradford) - Pulled off a string of brilliant saves, some of them from close range.
Bradford: Duke 9, Darby 6, McArdle 8, McHugh 8, Good 7, Hines 8, Jones 7, Doyle 7, Atkinson 6, Wells 8, Hanson 7. Subs: Turgott 7.
Aston Villa: Given 6, Clark 6, Bennett 5, Baker 5, Lowton 6, Bannan 6, Delph 5, Weimann 6, N’Zogbia 7, Agbonlahor 5, Benteke 5. Subs: Bent 5, Burke 6.
MATCHCAST: FULL COMMENTARY AND STATS
- Related links