Porto begon goed aan de wedstrijd en kwam na achttien minuten op voorsprong via James Rodriguez. Lang konden de Portugezen echter niet genieten van de voorsprong, want twee minuten later scoorde Roman Shirokov al tegen namens Zenit. De tweede gele kaart van Jorge Fucile vlak voor rust deed Porto de das om.
In de tweede helft maakte de thuisploeg dankbaar gebruik van de man-meer-situatie. Shirokov zorgde een kwartier na rust voor de voorsprong. Danny gooide twintig minuten voor tijd de wedstrijd op slot in het voordeel van de Russische club.

