Sporting CP beat Arsenal in a penalty shootout after a 1-1 draw at the Emirates on Thursday in the second leg of their Europa League round-of-16 tie to advance to the quarterfinals.
The tie was level on aggregate after last Thursday's 2-2 draw in Lisbon and Granit Xhaka struck in the first half, before Pedro Goncalves scored an unbelievable goal from just past midfield to draw things level and send the match to extra time.
- Europa League knockout round draw: Full details
Arsenal scored a crucial first goal on 19 minutes when Gabriel Martinelli's shot was saved by Sporting keeper Antonio Adan, but the rebound fell right into Xhaka's path and he swept home with his first touch to stake the Gunners to the lead.
Despite taking the lead into the break it wasn't all good news for Arsenal, as Mikel Arteta was forced to make two injury substitutions in the first half -- Ben White coming on for Takehiro Tomiyasu on nine minutes and Rob Holding replacing William Saliba shortly after.
Play resumed at a brisk place following the intermission before the visiting fans were roared to life just past the hour mark when Goncalves dispossessed Arsenal, crossed the halfway line and sent a shot sailing over Aaron Ramsdale's head from 50 yards away to level the score.
Arteta's side appeared stunned after the long-range leveller, with Oleksandr Zinchenko gathering players at midfield before the restart as Arsenal looked to take the game to their re-energized Portuguese opposition.
Ramsdale then required attention from Arsenal's medical staff in the 72nd minute after taking a well-struck Marcus Edwards shot to the face, but the England international was able to carry on after spending a few moments on his back.
Neither team could find a go-ahead goal in regulation and the game went to extra time level at 3-3 on aggregate.
A horrible back pass from Sporting sprang Leandro Trossard on goal with only the keeper to beat, but Adan bailed out his back line and clipped the Belgian's shot and before it trickled in behind him and glanced off the post to safety.
Adan made another excellent save from a goal-bound Gabriel Magalhaes' header and Manuel Ugarte was sent off with a second yellow for his tackle on Bukayo Saka as the match went to the penalty spot to be decided.
Both teams were perfect from the spot until Adan saved Gabriel Martinelli's spot kick and Nuno Santos hit his to send Sporting through to the final eight.