Match ends, Zenit St Petersburg 1, Benfica 2.
Two-time European champions Benfica reached the Champions League quarter-finals with a 3-1 aggregate win against Zenit St Petersburg.
The Portuguese side won the first leg 1-0 but Zenit levelled the tie in Russia on Wednesday when Hulk scored a second-half header.
However, Nicolas Gaitan nodded in after the hosts' keeper Yuri Lodygin had pushed a shot onto the bar.
Talisca then sealed a 2-1 win on the night with a late drive.
Zenit, managed by former Chelsea and Tottenham boss Andre Villas-Boas, had been looking to reach the Champions League quarter-finals for the first time.
The Russian side struggled to break down their opponents for much of the game, but were in the ascendancy when forward Hulk struck with a free header from Yuri Zhirkov's cross midway through the second half.
With five minutes left and the score 1-1 on aggregate it looked like the game was heading for extra time before Raal Jimanez's long-range strike was tipped onto the bar by Lodygin and midfielder Gaitain pounced on the loose ball to head into the empty net.
The goal meant Zenit needed to find two goals and as they pushed forward Benfica took full advantage as Talisca struck on the half-volley with the last kick of the game.
The stats you need to know
- Benfica have reached the Champions League quarter-finals for the first time since 2011-12 when they were eventually eliminated by Chelsea.
- Nicolas Gaitan has been directly involved in seven goals in seven Champions League appearances this season (four goals, three assists).
- Benfica have scored in all eight of their games in the competition this season.
- Hulk (eight) has had a hand in more Champions League goals this season than in any other previous campaign (four goals, four assists).
- Hulk made his 50th Champions League appearance; becoming the 24th Brazilian to reach this milestone.
- France (28) are the only nation with more players to have made more than 50 appearances - Spain are also on 24.
Zenit St Petersburg
- 2AnyukovSubstituted forSmolnikovat 58'minutes
- 8da Silveira JúniorSubstituted forYusupovat 82'minutes
- 9KokorinSubstituted forShatovat 58'minutes
- 10Alves Gomes
- 7Vieira de SouzaBooked at 90mins
- 50Nélson Semedo
- 21Afonso FernandesBooked at 49minsSubstituted forSalvioat 73'minutes
- 85Renato Sanches
- 11MitroglouBooked at 36minsSubstituted forJimenez Rodriguezat 67'minutes
- 17Gonçalves OliveiraSubstituted forSouza Conceiçãoat 90+2'minutes
- 9Jimenez Rodriguez
- 13Pedro Lopes
- 20Gonçalo Guedes
- 28Azevedo Ferreira Sá Pereira
- 30Souza Conceição
- 66Rúben Dias
- Viktor Kassai
- Shots on Target
Second Half ends, Zenit St Petersburg 1, Benfica 2.
Goal! Zenit St Petersburg 1, Benfica 2. Anderson Talisca (Benfica) right footed shot from the centre of the box to the bottom left corner. Assisted by Nicolás Gaitán.
Hulk (Zenit St Petersburg) is shown the yellow card.
Offside, Zenit St Petersburg. Danny tries a through ball, but Hulk is caught offside.
Foul by Igor Smolnikov (Zenit St Petersburg).
Raúl Jiménez (Benfica) wins a free kick on the left wing.
Substitution, Benfica. Anderson Talisca replaces Jonas.
Delay over. They are ready to continue.
Delay in match Ederson Moraes (Benfica) because of an injury.
Attempt missed. Hulk (Zenit St Petersburg) left footed shot from outside the box is close, but misses the top right corner. Assisted by Axel Witsel.
Luís Neto (Zenit St Petersburg) wins a free kick in the defensive half.
Foul by Raúl Jiménez (Benfica).
Igor Smolnikov (Zenit St Petersburg) wins a free kick on the right wing.
Foul by Raúl Jiménez (Benfica).
Goal! Zenit St Petersburg 1, Benfica 1. Nicolás Gaitán (Benfica) header from very close range to the centre of the goal.
Attempt saved. Raúl Jiménez (Benfica) right footed shot from outside the box is saved in the top left corner.
Foul by Oleg Shatov (Zenit St Petersburg).
Nelsinho (Benfica) wins a free kick in the defensive half.
Offside, Zenit St Petersburg. Yuri Zhirkov tries a through ball, but Artem Dzyuba is caught offside.