Calhanoglu brings Rossoneri back from the brink

Getty Images

Milan took the lead when Giacomo Bonaventura converted in the 12th minute, but a brace from defender Bremer looked set to be enough to send Torino into the semi-finals for the first time since 1993-1994.

However, Calhanoglu replaced Rade Krunic in the 82nd minute and his stoppage-time strike from the edge of the box forced an additional half an hour.

A stunning drive from the same player just 29 seconds into the second half of extra time was followed two minutes later by Zlatan Ibrahimovic's second goal since returning to the club, sending the Rossoneri through to face Juventus in the last four.

Bonaventura turned Ante Rebic's cross home from six yards to put Milan ahead, but the Croatia international failed to convert a brilliant cross from Samu Castillejo in the 33rd minute to double the lead.

It proved costly 51 seconds later, with Bremer letting a delightful lofted pass from Simone Verdi bounce before guiding a clever finish underneath the onrushing Gianluigi Donnarumma.

Ibrahimovic replaced the disappointing Krzysztof Piatek in the 65th minute but Torino moved in front when Ola Aina's cross from the left was nodded in by Bremer.

Torino were unable to hang on until the final whistle, though, with Calhanoglu's stoppage-time effort from the edge of the box beating Salvatore Sirigu after deflecting off Bremer's replacement Koffi Djidji.

Ibrahimovic missed a glorious chance to wrap things up in normal time from six yards with the goal gaping, while Theo Hernandez failed to guide the ball beyond Sirigu, who also kept him out the follow up, in the 103rd minute.

The crucial fifth goal eventually arrived in the second half of extra time, with substitute Franck Kessie releasing Calhanoglu for a fierce effort that had too much power for Sirigu.

Ibrahimovic squeezed a pass from fellow sub Rafael Leao inside the near post to seal the deal in the 108th minute, ensuring there will be no Turin derby in the semi-finals.