Lukas Piszczek (2nd l.) scored a vital equaliser for Borussia Dortmund in their win away to Zenit St. Petersburg. - © OLGA MALTSEVA/AFP via Getty Images
Lukas Piszczek (2nd l.) scored a vital equaliser for Borussia Dortmund in their win away to Zenit St. Petersburg. - © OLGA MALTSEVA/AFP via Getty Images
bundesliga

Borussia Dortmund turn the tables on Zenit St. Petersburg to top UEFA Champions League F

Goals from Lukasz Piszczek and Axel Witsel fired Borussia Dortmund into the UEFA Champions League last 16 as Group F winners after coming from behind to beat Zenit St. Petersburg on Tuesday.

Zenit St. Petersburg 1-2 Borussia Dortmund
Goals: 1-0 Driussi (16'), 1-1 Piszczek (68'), 1-2 Witsel (78')

Deprived of a number of first-team regulars including Erling Haaland, Thomas Meunier and Manuel Akanji, Dortmund were somewhat sluggish in the first half and struggled to get into their rhythm. Zenit, already guaranteed to finish bottom of the group before this game, had nothing to lose and that added a certain freedom to their play. The hosts duly took the lead after 16 minutes when Sebastian Driussi's shot took a deflection of Mats Hummels' toe and beat Marwin Hitz at his near post. Dortmund almost equalised straight away, but Thorgan Hazard's low drive was well saved by Mikhail Kerzhakov. BVB had their best chances of the half just before the interval, but Jude Bellingham headed over from close range and Marco Reus hit the post with a curling effort from the edge of the box.

Dortmund had Hitz to thank for keeping them in the game within seconds of the restart with a double save from Driussi. Zenit pushed for a second goal in those early stages, but momentum swung Dortmund's way with the introduction of Gio Reyna and Youssoufa Moukoko on the hour mark, the latter making history as the competition's youngest ever player. Needing a win to be guaranteed top spot in the group, BVB began to show greater incision going forward and pulled level when Piszczek prodded in from close range after a corner caused havoc in the Zenit penalty area. Jadon Sancho was also brought off the bench to provide further attacking thrust, and the substitution soon paid off when he teed up Witsel to sweep a shot into the bottom corner from the edge of the box against his former side and propel Dortmund into the last 16 as section winners.

Match stats

  • Moukoko is the youngest player in Bundesliga history. He overtook Celestine Babayaro as the greenest Champions League debutant here, at the age of 16 years and 19 days.
  • Dortmund won this competition in 1997 and were runners-up to Bayern Munich in 2013. Zenit's best performance is reaching the last 16, which they have done three times.
  • Dortmund won Group F with 13 points from a possible 18. Lazio finished as runners-up on 10 points.
  • Witsel scored 22 goals in 180 games as a Zenit player between 2012 and 2017, winning the Russia Premier League in 2015.
  • Zenit's Santos previously played 47 Bundesliga games for Hamburg. Fellow defender Lovren, although fluent in German, has never played in Germany.

Line-ups

Zenit:  Kerzhakov - Sutormin, Prokhin, Rakitskiy (Lovren 67'), Santos - Ozdoyev (c) (Krugovoi 79'), Barrios, Kuzyaev (Wendel 60') - Malcom (Karavaev 79'), Azmoun, Driussi (Dzyuba 60')
Unused subs: Vasyutin, Lunev, Mostovoy, Zhirkov, Erokhin, Musaev, Shamkin
Out: 
Chistyakov (ineligible)
Coach: 
Sergei Semak 

Dortmund: Hitz - Piszczek (Sancho 72'), Hummels (Zagadou 72'), Can - Passlack (Reyna 58'), Bellingham, Witsel, Schulz - Brandt (Moukoko 58'), Reus (c), Hazard (Knauff 83')
Unused subs: Bürki, Drljaca, Raschl
Out: Akanji (knee), Dahoud (ill), Delaney (back), Haaland (muscular), Meunier (calf), Morey (muscular), Reinier (not included), Schmelzer (knee)
Coach: Lucien Favre

As it happened!

1 - 2

(1 - 0)

Zenit
FINAL
Dortmund
Champions League
Matchday 6
Matchday 6Krestovsky Stadium
90'

FULL TIME

Dortmund come from behind to beat Zenit and top Group J on 13 points. A draw would have been enough in the end, as Lazio drew 2-2 with Brugge. BVB were far from their, but dug in and ground out an important victory. It's a special occasion for Witsel, who scored the winner for his former side, and also for Moukoko, now the youngest player ever to appear in the Champions League.
90'

INTO STOPPAGE TIME

There will be four more minutes added on here. As it stands, Dortmund will top the group!
88'

KARAVAEZ SHOOTS

The Zenit midfielder gets a shot away on the half-volley from just outside the box. He strikes it well, but Hitz makes a good save.
85'

HAZARD LIMPS OFF

Hopefully nothing serious for the Belgium international, who is replaced byKnauff, who makes his senior debut for BVB.
84'

Substitution

sub
Ansgar Knauff
Ansgar Knauff
sub
Thorgan Hazard
Thorgan Hazard
82'

BRILLIANT DEFENDING FROM REYNA

Zenit have a corner from the left and it's glanced on to the back post. Azmoun gets the wrong side of Reyna and looks certain to equalise from close range, but Reyna get a vital interception, flicking it off his toe for another corner.
79'

WITSEL TURNS IT AROUND!

Witsel receives the ball on the edge of the Zenit area, cuts on to his left foot and squeezes a low shot in at the near post against his former side!
79'

Axel Witsel

GOAL!

1:2
Axel Witsel
78'

WENDEL HAS A POP

Charging into the box from the left, Wendel strikes a first-time effort. Hitz is equal to it, though.
77'

BUILDING MOMENTUM

The equalising goal has put the wind in Dortmund's sails and they're looking far more threatening now, pulling the Zenit defence apart more incisively than earlier in the game. Reus, Sancho, Reyna, Hazard and Moukoko is a pretty fearsome frontline for the closing stages.
74'

ATTACKING CHANGES

Favre takes on two defenders in Piszczek and Hummels, bringing on just Zagadou as defensive cover, while Sancho is now also on.
72'

Substitution

sub
Dan-Axel Zagadou
Dan-Axel Zagadou
sub
Łukasz Piszczek
Łukasz Piszczek
72'

Substitution

sub
Jadon Sancho
Jadon Sancho
sub
Mats Hummels
Mats Hummels
70'

BRILLIANT FROM REYNA

A stunning run from the USA international, dribbling past three or four defenders. He tries to square it to Moukoko, who would be left with a tap-in, but a defender gets there first!
68'

DORTMUND BACK IN IT!

It's as scrappy as they come as Zenit fail to clear following a corner, but Piszczek is well placed to prod in from close range! Game on!
68'

Łukasz Piszczek

GOAL!

1:1
Łukasz Piszczek
66'

BELLINGHAM SMASHES OVER

The young midfielder tries his luck from distance, lining up a shot from 25 yards. It's always rising though, and sails well over the target.
63'

ANOTHER OPENING FOR ZENIT

The home team break forward into space again, with Dortmund now leaving more gaps at the back. Azmoun has a brief glimpse of goal and tries to get a shot away, but Hummels manages to block before Hitz needs to make a save.
60'

DOUBLE SUBSTITUTION FOR ZENIT

Wendel and Dzyuba come on for Kuzyaev and Driussi.
60'

FAVRE SHAKING THINGS UP

The Dortmund coach is attempting to breathe new life into his attack as they search for goals, bringing on Reyna and Moukoko for Brandt and Passlack. At 16 years and 18 days, Moukoko becomes the youngest ever player to appear in the Champions League.
58'

Substitution

sub
Giovanni Reyna
Giovanni Reyna
sub
Julian Brandt
Julian Brandt
58'

Substitution

sub
Youssoufa Moukoko
Youssoufa Moukoko
sub
Felix Passlack
Felix Passlack
57'

HAZARD ATTEMPT

Dortmund get forward but it's all a bit too slow and intricate to catch the Zenit rearguard out. Bellingham is still able to dig out a cross from the left and finds Hazard in the middle, but his header lacks power and it's a comfortable save for the goalkeeper.
53'

ZENIT DANGEROUS AGAIN

Malcom has the ball on his preferred left foot, just inside the right-hand side of the Dortmund penalty area. He could shoot for the far corner but instead plays a reverse ball into Ozdoev's path on the overlap. He tries to cross, but Can is able to block.
50'

CHANCE FOR ZENIT

Another Dortmund attack breaks down in the final third and the home side immediately spring into life. Kuzyaev runs at Hummels, coming in from the left, but the Dortmund defender times his tackle perfectly to nip the threat in the bud.
47'

HITZ TO THE RESCUE!

Zenit really should be 2-0 up here after a goalmouth scramble. Hitz makes a brilliant save to deny Azmoun, and then gets up quickly to gobble up on the rebound just when it looked like the home team would score.
46'

HERE WE GO AGAIN!

No changes from either side during the break.
Kick-off!

TIME TO WORK

45'

DORTMUND WITH IT ALL TO DO

The visitors haven't really clicked going forward yet, with Reus' shot off the post on the stroke of half-time the closest they have come to scoring. As Lazio are winning in the other Group F game against Brugge, BVB need to turn this around if they're to finish top of the section.
Half-time
45'

REUS HITS THE POST!

So close from the Dortmund captain, who gets the ball on the left-hand corner of the Zenit area. He cuts onto his right foot and curls a shot towards the far corner. The goalkeeper is beaten, but his shot crashes off the post and is hooked clear!
43'

OVER FROM BELLINGHAM!

Schulz crosses from the left and finds Bellingham in the middle of the box, about eight yards out. He gets his head on it but can't steer it on target. that's Dortmund's best opening of the match so far
39'

MOVE PETERS OUT

Dortmund break forward at pace as Brandt drives the ball forward to Reus, who dummies it for Hazard. He cuts in from the left and tries to switch play to the right to the onrushing Passlack. It's a bit behind him though, and Passlack has to change direction, and can't keep it from rolling out of play.

WITSEL DOING WITSEL THINGS

The Belgium international has been as composed as ever on his first ever match against his former side, shielding the defence in typically robust fashion.
33'

GOAL DISALLOWED

Azmoun runs through on goal after collecting Malcom's flick and slots the ball past Hitz. He starts to celebrate but it's short-lived as the assistant referee raises his flag for offside. A big let-off for Favre's side there.
32'

FINAL BALL LACKING

Dortmund work the ball forward well as Brandt finds Witsel in space in a central position. He shifts it wide to Schulz, overlapping on the left. He tries to play a first-time cross into the middle but miscues it and Zenit can clear.
29'

LAZIO LEAD

As the half-hour mark approaches in this game, Lazio are currently 2-1 up against Brugge, meaning they would go through as group winners, with Dortmund in second place.
26'

CAN HEADS WIDE

Brandt bends in a corner from the right and Can is first to it, but his header bounces wide of the far post.
23'

GOOD SAVE FROM KERZHAKOV!

A neat one-two between Reus and Brandt on the left-hand side allows the former to get to the byline. He pings the ball across goal, but the Zenit keeper is alert and smothers the danger.
19'

HAZARD GOES CLOSE!

Dortmund almost pull level right away as Hazard cuts inside from the left and drills a low shot towards the near post, but Kerzhakov gets down well and tips it out for a corner.
16'

ZENIT TAKE THE LEAD!

It's a bitter blow for Dortmund, as well-worked a goal as this is. Some slick passing on the edge of the box finds Sutormin sprinting down the right. He pulls it back to Driussi, whose shot takes a deflection off Hummels' toe and beats Hitz.
16'

Sebastian Driussi

GOAL!

1:0
Sebastian Driussi
14'

CHANCE TO COUNTER

Passlack tears forward down the right as BVB break forward. He tries to play it early into Reus' run in the middle, but he gets too much on it and the Dortmund captain can't reach it.
11'

DORTMUND FREE-KICK

Can wins a free-kick about 10 yards outside the Zenit box. Reus curls it in and finds Witsel's head, but his effort floats well off target.
8'

NEAT FROM ZENIT

The hosts hit back with a strong period of their own and some neat passing on the edge of the box presents Azmoun with a shooting chance. Hummels is alive to the danger, though, and manages to block.
5'

DORTMUND GETTING FORWARD

A decent spell from the visitors as they camp out in Zenit's half. Bellingham and Passlack have combined nicely a couple of times on the right - the former even gets to the byline and tries to cross into the middle, but it's blocked as soon as it leaves his foot.
3'

FINDING THEIR FEET

Neither side has been able to hold on to the ball for long so far as both teams try to settle into their rhythm.
1'

HERE WE GO!

The ball is rolling in Russia!
Kick-off!
3:23

WATCH: REUS' ROLE

This will be Reus' 16th competitive outing of the season for Dortmund, but just his ninth start as Favre rests and rotates his captain. He remains an integral figure in the side though. Watch on for more...

DORTMUND HAVE THE EDGE

History is on the Black-and-Yellows' side in this fixture, if only marginally. Dortmund have won two of the three previous meetings, losing once. They triumphed 2-0 on home soil at the end of October, and before then earned a 5-4 aggregate victory in the last 16 of the competition in 2013/14, winning 4-2 away but losing 2-1 at home.

LAST TIME AGAINST ZENIT...

LAST TIME AGAINST ZENIT...

2:03

DORTMUND'S DRAW WITH FRANKFURT

BVB fell behind to Frankfurt on Saturday, but earned a point from their Matchday 10 encounter thanks to a stunning strike from Gio Reyna. Recap all the action here.

TOP SPOT THE AIM

Despite all that, and even though they are already guaranteed a place in the next round, Dortmund have their sights set on topping Group F. That would, theoretically at least, give them an easier opponent in the last 16. "Obviously we're playing to win," said Favre. "We want to finish top." Victory would ensure they do so, while a draw would also be enough if Lazio fail to beat Brugge in the other game.

INJURY HIT

Favre's hands have been tied somewhat given the lengthy absentee list has is currently dealing with. Akanji (knee), Dahoud (ill), Delaney (back), Haaland (muscular), Meunier (calf), Morey (muscular), Reinier (not included) and Schmelzer (knee) are all unavailable, so the Swiss tactician is rotating his side to keep legs fresh in a bid to avoid muscle injuries.

SIX CHANGES FROM FAVRE

BVB boss Lucien Favre has made no fewer than six changes to his starting line-up following the 2-2 draw with Eintracht Frankfurt on Saturday. Hitz replaces Bürki in goal, while Piszczek comes into the back three in place of Zagadou. Further forward, Passlack and Bellingham take the midfield slots instead of Dahoud and Morey, while Reus and Hazard start in attack on place of Sancho and Reyna.

ZENIT STARTING XI

Kerzhakov - Sutormin, Prokhin, Rakitskiy, Santos - Ozdoyev (c), Barrios, Kuzyaev - Malcom, Azmoun, Driussi

ZENIT SUBS

Vasyutin, Lunev, Krugovoi, Lovren, Karavaev, Mostovoy, Zhirkov, Wendel, Erokhin, Dzyuba, Musaev, Shamkin

DORTMUND STARTING XI

Hitz - Piszczek, Hummels, Can - Passlack, Bellingham, Witsel, Schulz - Brandt, Reus (c), Hazard

DORTMUND SUBS

Bürki, Drljaca, Zagadou, Sancho, Moukoko, Reyna, Knauff, Raschl

WELCOME ALONG!

Thank you for joining us for live coverage of Dortmund's final Group F match. Stay tuned for team news and pre-match build-up!