Not much happened in the early stages, but half-chances started popping up around the ten minute mark. Henrikh Mkhitaryan nearly managed to sneak the ball through to Luiz Adriano as Shakhtar pressed the attack, but it was the other end of the pitch that saw a more significant threat develop. Mario Goetze did very well with a sneaky reverse pass, and it took a desperate block from Andriy Pyatov to keep Robert Lewandowski from finding the back of the net.
Minutes later, Olexandr Kucher managed to get himself booked as the centre half dragged down Lewandowski on the counterattack, and the visitors had to survive another scare when Marco Reus managed to retrieve possession on the byline and drove in a low cross that none of the assembled yellow shirts could force home.
Lukasz Piszczek also wasted an opportunity after fine work from Lewandowski put him one on one with Pyatov, but the right back opted to try to play a square pass rather than shoot and the retreating Shakhtar defenders were just about able to scramble clear.
But Borussia Dortmund were not to be denied for long. Felipe Santana got them on the scoresheet in the 31st minute, rising high on a corner kick to power a header into the top corner. The ball was past Razvan Rat on the line before he could even react.
And things went from bad to worse for the visitors in fairly short order. When Lewandowski hared after a loose ball on the right touchline, there wasn't much threat -- there were four white shirts in Pyatov's box marshalling the diminutive form of Mario Goetze. But somehow, the cross went straight through to BVB's number ten, and he produced a delightful flick that snuck just inside the near post to make it 2-0.
The hosts now have a very comfortable cushion, and unless Shakhtar can produce two goals from more or less nothing in the second half, they're toast.