Jason Knight’s 84th-minute strike earned Bristol City a thrilling 3-2 Championship win over Hull at Ashton Gate.
The hosts took a 24th-minute lead when Jacob Greaves handled Tommy Conway’s glancing header and Conway sent goalkeeper Ryan Allsop the wrong way from the spot.
But Hull battled back to equalise on 33 minutes through Aaron Connolly and went in front eight minutes later with the game’s second penalty, coolly converted by Ozan Tufan after referee Ben Toner spotted a foul on Greaves as he contested a free-kick from the left.
Anis Mehmeti brilliantly equalised and a terrific advertisement for Championship football ended with Bristol fans celebrating thanks to Knight, while those who had made the long journey from Hull could console themselves with the fact that their team had given everything.
Bristol had the better of the opening exchanges, Knight forcing saves from Allsop with a shot and a header before Conway’s opener.
But Zak Vyner had already made a saving tackle on Connolly before the striker’s fine solo equaliser, cutting in from the left to drill a sweet low drive beyond the reach of City goalkeeper Max O’Leary.
The home side bitterly disputed the penalty decision that put them behind but Hull were worthy of their interval lead after finishing the first half strongly.
O’Leary saved well from Tufan after one of several strong runs by Liam Delap, who caused problems down the right wing for Hull.
Bristol began the second period well and Conway was just wide with a near-post volley from a Taylor Gardner-Hickman cross.
Again Hull rallied and Lewie Coyle shot wide from distance after two corners in quick succession.
Delap had a shot from a narrow angle saved by O’Leary and Connolly saw a fierce volley blocked as Liam Rosenior’s men wrestled back the initiative.
At the other end Greaves did well to get in the way of a close-range shot from Knight.
Both teams looked to play out from the back and through midfield as an entertaining contest developed.
On 77 minutes, Mehmeti matched Connolly’s goal with a brilliant solo effort, racing in from the left and placing a perfect low shot beyond the diving Allsop.
Hull had to substitute Allsop through injury on 82 minutes and two minutes later replacement Matt Ingram was beaten by Knight’s fierce shot from just inside the box, which took a deflection.
There were chances at both ends right into seven minutes of stoppage time, when Hull substitute Adama Traore volleyed narrowly wide at the near post.
Neither side deserved to lose and rightly received a rousing ovation at the end of a brilliant game.