Rangers ensured they take a 4-2 lead into the second leg of their Europa League knockout round play-off against Borussia Dortmund.
The Bundesliga side were without star striker Erling Haaland at Signal Iduna Park, but it was their defence that let them down as goals from James Tavernier, Alfredo Morelos and John Lundstram along with a Dan-Axel Zagadou own goal put Rangers in control.
This was the first meeting between the two teams since the last 32 of the 1999-2000 UEFA Cup, in which Rangers manager Giovanni van Bronckhorst played – and the Dutchman could only be delighted with the display of his side.
Meanwhile, Marco Rose was left scratching his head at the insipid showing from Dortmund, although goals from Jude Bellingham and Raphael Guerreiro ensured the tie is not over quite yet.
Zagadou had a golden chance to open the scoring for Dortmund when he completely misjudged a free header from a corner, and things got worse for the defender nine minutes before the break as a Rangers corner struck him on the arm and, after a quick VAR check, a penalty was awarded.
Tavernier sent Gregor Kobel the wrong way from the spot, and a tremendous first half for the Scottish champions improved further following another corner, which Joe Aribo flicked on for Morelos to tap in unmarked.
The second half began just as well for Van Bronckhorst’s side when Ryan Kent set up Lundstram to fire past Kobel with a neat finish from the edge of the box, although Bellingham immediately pulled a goal back with an equally accurate effort from similar distance.
That did not mark the start of a comeback, though, as Rangers made it four when Zagadou deflected in Morelos’ shot, with the VAR overturning an initial decision to rule the goal out for offside.
Guerreiro responded again for Dortmund with a neat finish with eight minutes to go, but the hosts could not make a further dent in the deficit ahead of the return leg at Ibrox.
Not even the most optimistic Rangers fan would have predicted this result, but Dortmund fans might have had a hint at the impending doom.
Despite sitting second in the Bundesliga table, random awful results never seem far away for BVB, with their last outing at home seeing them hammered 5-2 by Bayer Leverkusen.
They understandably missed Haaland, who so often thrives in Europe, scoring 23 goals in 20 appearances in major European competition (exc. qualifying), but some of the defending was inexcusable.
Rangers had lost seven of their previous eight away games against German opponents in European competition (D1) since beating Bayer Leverkusen in the UEFA Cup in October 1998, and failed to score in six of those games.
Here they were especially effective on the counter, having twice as many shots in the first half as Dortmund (six to three) despite only having 37.5 per cent of the possession.
In league play, a win and a defeat might work out better than two draws, but Dortmund’s remarkable record of drawing only once in 33 games in all competitions this season suggests a lack of control, which is extremely unhelpful in a tie such as this.
There was certainly no opportunity to settle for a first-leg draw on Thursday when not firing on all cylinders, meaning BVB will have to win big away from home to advance.