Of course Manchester City came to win. It’s just that, if they had really needed to, you sensed they would probably have found a way. A draw here suited both teams fine, with City already qualified for the last 16 and Borussia Dortmund needing just a point. And for all the brief flurries of drama, including a missed penalty in the second half by Riyad Mahrez, this was ultimately a match of narrowed ambitions and thwarted plans: a learning experience rather than a red-hot contest.
So what did Pep Guardiola learn? Probably a lot that he already knew. That City at anything less than their usual feverish intensity remain vulnerable in transition. That goalkeeper Stefan Ortega is a fine and reliable deputy to Ederson. That Julian Álvarez can be a viable Plan B when Erling Haaland is injured or rested.
Haaland came off after a warm welcome from his former supporters and a quiet, ruminant 45 minutes. Álvarez, who moved into the centre-forward role in the second half, was sharp and busy, even if a resilient Dortmund defence restricted him to limited sights of goal.
And even if the stakes were not at their highest, the atmosphere was as rabidly, raucously good as ever. The Yellow Wall heaved and howled and hammered out all the old tunes, a hurricane of song and aggression. They roared when Mats Hummels slid in on Haaland early on as he got a sight of goal, and screeched at the long spells of City possession, which thanks to a well-organised Dortmund press were not quite as numerous as Guardiola would have liked.
Edin Terzic’s Dortmund are a curate’s egg of a team at the moment: capable of brilliant blitzes and still in an open Bundesliga title race despite an indifferent start to the season. But consistency has been their curse, an unpredictability born out not just in results but in layout.
Here again they returned to the curious hybrid system deployed earlier in the season, with a well-protected back three and two out-and-out wingers in Karim Adeyemi and Gio Reyna: a team built for lightning transitions, but also one that demanded a masterful command of space and a sixth sense for danger.
Guardiola had decided to take another look at Álvarez up front: nominally starting alongside Haaland but often dropping deeper to link play or create space.
John Stones, in the team for the first time in more than a month, started at right-back; João Cancelo played his usual freeform-jazz solo role on the left. And yet for all City’s promising approach play it was Dortmund who looked the more threatening side earlier on, countering with numbers, often just one good pass away from breaking the game open entirely.
Reyna had a shot from 18 yards. Youssoufa Moukoko had two golden chances to open the scoring towards the end of the first half. In many ways this has been Dortmund’s Achilles heel this season: poor execution in the final third, and a consequent failure to capitalise on their dominant periods.
Haaland and Cancelo came off at the start of the second half, ushering in perhaps the most intriguing period of the game. Both teams seemed to free up a little, spaces began to appear, and initially it felt like City would benefit.
They won a penalty when Mahrez played his usual game of show-and-hide with Emre Can, dropped the shoulder, drew a clear foul and stepped up to take the penalty himself.
But Gregor Kobel, the much-maligned goalkeeper, flung himself to his right to pull off a fine save. The Yellow Wall erupted again, and a reprieved Dortmund sensed that it might be their night.
But before long the blue waves of pressure began to wash over them. Stones stepped up into midfield and started directing play like a traffic policeman.
Ilkay Gündogan started to loiter further forward and shift the point of attack. Jack Grealish came on for the last 10 minutes with the aim of wreaking havoc on a tired Dortmund defence that had begun to sink into the ropes a little, protecting the point they needed. The wall held firm in the end; that City were not hell-bent on cracking it would ultimately prove to be Dortmund’s greatest fortune of all.