Sérgio Oliveira scored in extra time to send 10-man Porto into the quarterfinals of the Champions League despite a thrilling 3-2 loss at Juventus on Tuesday.
Porto, which played most of the second leg at a numerical disadvantage after Mehdi Taremi’s sending off, advanced on away goals after the matchup ended 4-4 on aggregate.
It's the second successive year that Juventus – and Cristiano Ronaldo – went out in the round of 16 on away goals after its loss to Lyon last season.
Sérgio Oliveira also netted Porto’s first goal, from the penalty spot, but Federico Chiesa scored twice in the second half to level the tie for Juventus and send the match into extra time.
Porto appeared to have all but won it before Adrien Rabiot reduced the deficit three minutes from time to set up a tense finale.
Both sides also hit the woodwork in an end-to-end match in which the momentum kept changing.
Juventus needed to overturn a 2-1 deficit from the first leg. It had conceded early in Portugal and almost did so again in Turin as Taremi’s header bounced off the bar in the sixth minute after Bianconeri defender Leonardo Bonucci had blocked Zaidu Sanusi’s effort.
Taremi was also involved in Porto’s goal as he won the penalty when he was fouled by Merih Demiral and Sérgio Oliveira converted into the bottom left corner.
Juventus appeared transformed after the break and drew level four minutes into the second half as Ronaldo controlled a Bonucci ball over the top and knocked it on for Chiesa to curl into the top right corner.
Juve’s hopes of turning the tie around grew further five minutes later when Taremi was sent off after he kicked a ball away and received a second yellow card moments after his first booking.
Chiesa hit the post before completing the comeback when he headed a Juan Cuadrado cross into the top left corner in the 63rd minute.
Juventus almost won it in stoppage time as Álvaro Morata had a goal disallowed for offside before Cuadrado fired an effort off the bar.
The Bianconeri were made to regret those wasted opportunities as Sérgio Oliveira’s free kick went under the wall and into the bottom left corner five minutes from the end of extra time.
Rabiot was partly at fault although he came close to atoning for his error by heading in a corner two minutes later.
In the other match of the night, Erling Haaland scored twice for Borussia Dortmund to reach the Champions League quarterfinals in a heated 2-2 draw with Sevilla.
Haaland took his season tally to 10 goals for Dortmund to progress with a 5-4 win on aggregate. The Bundesliga team won the first leg of their last-16 tie 3-2 in Seville, where Haaland also scored two.
The Norwegian has 20 altogether in just 14 appearances in Europe’s premier tournament in his young career, and he was the key factor in Dortmund advancing.
Youssef En-Nesyri scored twice for Sevilla to set up a dramatic finale.
The visitors attacked from the start and had Dortmund pinned back for much of the opening 30 minutes. Lucas Ocampos tested Dortmund goalkeeper Marwin Hitz early on before playing the ball through Emre Can’s legs to set up Suso, who fired narrowly wide.
Dortmund’s defenders were desperately just booting the ball away as the pressure continued, but the home side capitalized on some indecision in Sevilla’s buildup play for Haaland to score in the 35th minute with Dortmund’s first real chance on a counterattack.
Thomas Delaney muscled Jules Koundé off the ball, and Nico Schulz passed it to Mahmoud Dahoud, who played a fine ball for Marco Reus. The Dortmund captain stayed cool in front of the outrushing Sevilla keeper and cut the ball back for Haaland’s easy finish.
Sevilla’s frustrations and Dortmund’s confidence grew in tandem after the goal, but there was still time before the break for Fernando and Ocampos to try their luck.
Haaland displayed remarkable strength and precision to score his second after the break, but the goal was taken back through Video Assitant Referee (VAR) – likely because Haaland was adjudged to have fouled Fernando, whom Haaland bundled over with his shoulder – and a penalty was awarded for an earlier infringement on the Norwegian by Koundé, who had been pulling his jersey for a Reus cross.
Yassine Bounou – the Sevilla goalkeeper who is known as Bono – saved Haaland’s penalty, then the forward’s second effort from the rebound, but VAR intervened again and ordered another penalty as Bono was marginally off his goal line.
Haaland scored at the second attempt – third including the disallowed goal – in the 54th and was then booked for taunting the goalkeeper with his celebration. Several Sevilla players ran after the forward and referee Cüneyt Çakır had to work to keep tempers in check.
Then Can conceded a penalty for a foul on substitute Luuk de Jong.
En-Nesyri hammered the spot kick in off the underside of the crossbar in the 69th to set up a nervy finale. Sevilla still needed two goals to force extra time but had already proved capable of scoring them in the first leg.
Diego Carlos was fortunate to escape with a yellow card for catching Haaland in the face with his arm. Tempers continued to fray and the bookings continued but Çakır managed to avoid sending anyone off.
En-Nesyri scored in the sixth minute of injury time but it was just too late for Sevilla.