
United looked to be home and dry in the latter stages of the game before strikes from John Aloisi and Simon Colosimo turned the game on its head.
In front of crowd of just over 10,000, second placed Adelaide were expected to run out comfortable winners and extend their streak of seven home wins in a row.
They should have taken the lead early on when Marco Flores connected with Cassio’s left wing cross but his effort went just wide of the post.
Adelaide finally took the lead right on half time when playmaker Flores set Travis Dodd free and his cross was finished well by big striker Sergio van Dijk who nodded the ball home.
It was a nice break for Adelaide who should have been a goal down just moments prior when Heart midfielder Rutger Worm ballooned the ball over the bar when it was easier to score.
The visitors brought on veteran Josip Skoko at the interval in a bid to get back into the game, and they were good value for a least a point from that point on.
However, Flores almost had his second for Adelaide with a lovely chip over the head of Clint Bolton but it was just off target.
There looked to be only one possible ending until the 89th when John Aloisi rose highest to head home a corner by Skoko.
The Heart had barely finished celebrating they were up on their feet again as John Aloisi gave them a priceless win as he scored in the 92nd minute with a neat left foot finish.
Heart coach John van 't Schip was understandably pleased with the comeback.
"We got into the game and the confidence was growing. The longer the game goes on, we kept believing in our game, a good result or at least a draw," he said.
Adelaide United: E Galekovic, I Fyfe, D Mullen, Cassio, L Pantelis, A Hughes, S van Dijk, M Flores, P Reid, T Dodd, F Barbiero.
Subs: M Birighitti, C Watson, I Ramsay, J Keenan.
Melbourne Heart: C Bolton, M Marrone, S Colosimo, M Thompson, R Worm, K Sarkies, W Srhoj, J Aloisi, A Behich, N Kalmar, A Zahra.
Subs: P Zois, M Beauchamp, J Hoffman, J Skoko.