Match ends, Aston Villa 3, Sheffield United 3.
Aston Villa came from 3-0 down with eight minutes left to draw with Sheffield United as the Blades blew their chance to go top of the Championship table.
Billy Sharp had hit a classic goal-poacher's hat-trick to put the visitors in command and they looked set to leapfrog Norwich City and Leeds United to move top on goal difference.
But Tyrone Mings and Tammy Abraham scored twice in four minutes before substitute Andre Green headed an injury-time third.
Sharp won his personal duel with Abraham, the pair both having begun the night on 19 Championship goals. But that was scant consolation for the loss of two dropped points on a night when they had outplayed their hosts.
Captain Sharp ended it on 22, after scoring twice in nine minutes early in the second half to add to his 11th-minute opener - although both the first two had a whiff of controversy about them.
His opening goal was given by the all-seeing eye of technology, having only just crossed the line. And Villa also had cause to moan about his second, claiming that goalkeeper Lovre Kalinic had been fouled.
But there was no argument about his headed third - and that looked set to edge the Blades top before the rest of the weekend's fixtures.
However, on a ground that has now witnessed 67 goals in just 16 home Championship games this season, and seemingly no end of dramatic nights, Villa had a sensational sting in the tail.
Mings sparked the comeback when he marked his home debut by pulling the first one back on 82 minutes, before Abraham scored for the eighth successive home game, the second of two goals in four minutes.
It was Abraham's 13th strike in the club's last eight home games, making the on-loan Chelsea striker the first Villa player to hit 20 league goals in a campaign since Peter Withe did so in their title-winning season of 1980-81.
And then, in the fourth minute of injury time, the Blades buckled under the pressure and Green latched on to John McGinn's floated right-wing cross to head home - by which time many of the Villa fans had already left the ground.
Collapses, comebacks & the cabbage
It has been some season for Aston Villa in front of their own fans, with goals and drama aplenty. Even before Friday's late mayhem, Villa Park has played host to several classic encounters in 2018-19...
11 August: W 3-2 v Wigan - Birkir Bjarnason's strike in the fourth minute of stoppage time grabs all three points after being 2-1 behind.
22 August: D 2-2 v Brentford - Jonathan Kodjia heads an equaliser in the fifth minute of stoppage time against current manager Smith's then Bees.
2 October: D 3-3 v Preston - Loanee Yannick Bolasie saves Villa's blushes after they threw away a 2-0 lead against the Championship's bottom club. But it was to prove a game too far for manager Steve Bruce, who had a cabbage thrown at him by a home supporter on the night and then lost his job several days later.
25 November: W 4-2 v Birmingham City - A Second City derby full of goals and action that saw Villa trail 1-0, then give away a 2-1 lead before Alan Hutton stole the show with a mazy run for the fourth goal.
28 November: D 5-5 v Nottingham Forest - Just three days later, the game that had it all. Abraham scored four goals, but still did not finish on the winning side as - having been 2-0 down inside six minutes - Villa then spurned a 5-4 lead.
23 December: L 2-3 v Leeds United - From 2-0 up after just 17 minutes to being beaten in stoppage time 3-2, as Kemar Roofe netted the winner five minutes into added on time.
Aston Villa head coach Dean Smith told BBC Sport:
"Sheffield United will feel they've thrown that away but it was reward for the character and fight we showed.
"As soon as Tyrone Mings got that first goal, you could sense the mood change in the stadium and the lift it gave us.
"We certainly gave them a head start but for the last 15 minutes of the first half and at the start of the second, we were the better side.
"But the game was then turned on its head by their second goal. Billy Sharp was offside and then he's kicked it out of our keeper's hands and with his studs up too."
Sheffield United manager Chris Wilder told BBC Sport:
"I never felt that was coming. I thought we looked really comfortable and the more likely side to score again.
"But this game is historically mad. Villa only turned up for the last eight minutes or so. And it was down to our individual errors that they got something.
"Dean (Henderson) made an error for the first goal and you could see them get a spring in their step.
"I look at the bigger picture and the way my team dominated his team. All the best players on that pitch were wearing yellow."
- 28L Kalinic
- 21HuttonBooked at 60mins
- 15JedinakBooked at 14minsSubstituted forWhelanat 66'minutesBooked at 73mins
- 22El Ghazi
- 26KodjiaSubstituted forGreenat 65'minutes
- 27El Mohamady
- 6BashamBooked at 42mins
- 12EganBooked at 72mins
- 2BaldockBooked at 88mins
- 8DowellSubstituted forCranieat 74'minutes
- 10SharpSubstituted forWashingtonat 86'minutes
- 14MadineSubstituted forMcGoldrickat 69'minutes
- Tony Harrington
- Shots on Target
Second Half ends, Aston Villa 3, Sheffield United 3.
Attempt missed. Oliver Norwood (Sheffield United) right footed shot from more than 35 yards misses to the left.
Goal! Aston Villa 3, Sheffield United 3. Andre Green (Aston Villa) header from very close range to the top left corner. Assisted by John McGinn with a cross.
Corner, Aston Villa. Conceded by Enda Stevens.
George Baldock (Sheffield United) is shown the yellow card for a bad foul.
Tyrone Mings (Aston Villa) wins a free kick in the defensive half.
Foul by George Baldock (Sheffield United).
Goal! Aston Villa 2, Sheffield United 3. Tammy Abraham (Aston Villa) right footed shot from very close range to the bottom right corner following a set piece situation.
Attempt saved. Tommy Elphick (Aston Villa) right footed shot from the left side of the box is saved in the bottom right corner. Assisted by Glenn Whelan.
Substitution, Sheffield United. Conor Washington replaces Billy Sharp.
Alan Hutton (Aston Villa) wins a free kick in the attacking half.
Foul by Enda Stevens (Sheffield United).
Offside, Sheffield United. Billy Sharp tries a through ball, but David McGoldrick is caught offside.
Attempt missed. John McGinn (Aston Villa) left footed shot from outside the box misses to the right. Assisted by Tammy Abraham.
Goal! Aston Villa 1, Sheffield United 3. Tyrone Mings (Aston Villa) header from very close range to the top left corner. Assisted by Conor Hourihane with a cross following a corner.
Corner, Aston Villa. Conceded by Enda Stevens.
John McGinn (Aston Villa) wins a free kick in the defensive half.
Foul by John Fleck (Sheffield United).
Attempt missed. Billy Sharp (Sheffield United) right footed shot from outside the box is too high.