Ben Halloran struck deep into extra time to give Adelaide United a dramatic 1-0 victory over Melbourne City in the second A-League elimination final at Coopers Stadium. 

Adelaide striker Halloran was twice denied by the woodwork before finally beating Eugene Galekovic with a cool 119th-minute finish into the bottom-right corner.

The Reds' first win over City in eight encounters secured a semi-final trip to Premiers' Plate winners Perth Glory on Friday.

In a first half of limited chances, the hosts went closest in the 14th minute when Craig Goodwin released Halloran and the Australia international rattled the crossbar from just outside the area.

Paul Izzo produced a fine save to keep Riley McGree's fierce 30-yard drive from sailing into the top-right corner after the restart and Isaias fired wide from a free-kick before the end of regulation time.

Another stunning stop from Izzo denied Shayon Harrison in the second period of extra time, while Galekovic had the post to thank for sparing his blushes after Halloran's effort from the left of the box squirmed between his legs.

Halloran was not to be denied at his next attempt, though, slotting Papa Baba Diawara's square pass home to avoid a penalty shoot-out and end City's season.