WHAT HAPPENED
Ten years after becoming the first English team to beat AC Milan in the San Siro, we repeated the trick with a performance packed full of heart and desire.
The result - secured after first-half goals from Henrikh Mkhitaryan and Aaron Ramsey - gives us a big advantage heading into next week's second leg and will be a huge fillip to Arsene Wenger and his players.
So much had been said, so much had been questioned about the team in the build-up to this game - a do-or-die clash against opponents unbeaten in 13 beforehand.
What sort of response would we get? After weathering an early storm from the hosts - a 15-minute period in which they went close through Giacome Bonaventura and had a penalty appeal waved away - we soon had our answer.
Henrikh Mkhitaryan won this competition last season, and he made another big contribution here as he gave us the lead with a goal that silenced the San Siro.
The Armenian will get the headlines, but Mesut Ozil deserves huge credit for his role in the goal as he found his team-mate with a gorgeous, eye-of-the-needle pass. Mkhitaryan, collecting it to the left of the area, cut back inside and rifled his shot high into the roof of the net.
It was his seventh goal in his past 12 Europa League matches and he looked a constant threat in attack, playing a key role in the next big chance that fell to Calum Chambers, whose firm left-footed effort was saved by Gianluigi Donnarumma.
We had a flurry of chances just before the interval, with Danny Welbeck seeing a shot saved and Mkhitaryan curling one against the bar - but finally made it two on the stroke of the whistle.
Ozil - playing a part in his 100th goal in Arsenal colours - was at its heart again, slipping a lovely ball through to Ramsey, who kept his composure to round Donnarumma and slot the ball into the empty net.
We started the second half with just the same intensity and nearly had our reward with a third as Welbeck raced on to a mishit backpass, but the ball struck Donnarumma before rebounding against the striker and squirming just wide.
We were well on top, but Milan reminded us of their threat seconds later when the ball was played into Bonaventura eight yards out, but he put his shot over the bar.
HOW IT HAPPENED
Check out how the match unfolded with all the standout stats in our play-by-play report
WHAT IT MEANS
Armed with two away goals, we can look forward to the second leg against Milan at Emirates Stadium next Thursday with confidence.
We last hosted the Rossoneri back in 2012, when we beat them 3-0 in north London - but the result was not enough to take us through in the tie as we lost 4-3 on aggregate.
WHAT'S NEXT
We host Watford at Emirates Stadium on Sunday, and will be looking to improve our recent record against them, having lost our last two matches against the Hornets.
THE KEY MOMENTS
It was an open game at the San Siro, with plenty of action at either end. Here are the key moments from an entertaining affair:
3 - Calhanoglu curls a fine inswinging ball in from the right, and Bonaventure just misses it at the back post. A big chance for Milan.
8 - We pounce on a loose ball and Ozil feeds Wilshere in the area, who lays it back to Mkhitaryan but the Armenian fires into the side netting
10 - Calhanoglu cuts out a Chambers clearance and feeds Cutrone in the area, but the Milan forward drives his shot wide of the near post
12 - Milan break and Calhanoglu is played through. He gets to the ball just before the onrushing Ospina and is knocked out of his stride by the goalkeeper but stays on his feet and the referee waves play on despite the home side's penalty appeals
15 - Mkhitaryan gives us the lead with his first goal for the club as he collects Ozil's fine ball into feet in the area, and checks back before firing high into the roof of the net
30 - Calhanoglu curls the ball in from the right, Ospina races out to fist it away and the ball drops to Bonaventure 25 yards out but he volleys wide
42 - Ozil and Mkhitaryan combine as we break upfield and after Milan half clear the danger, Chambers takes aim with his left foot and sees a firm shot saved by Donnarumma
43 - We break again on the counter and Mkhitaryan plays Welbeck in with a good ball behind the Milan backline, but the striker's low shot is saved
45 - Just before half time, Welbeck leads another counter and plays a great ball into Mkhitaryan to the left of the area, and he cuts back in and hits the bar
45 - Ramsey makes it 2-0 after a superb through ball from Ozil plays him in behind the Milan backline and he takes it around Donnarumma and slots it into the empty net
47 - Xhaka and Kessie get involved in an altercation, near the corner flag but the referee breaks it up without any cards being shown
49 - Huge chance as a mishit clearance from Kessie plays Welbeck in on goal, but the ball hits Donnarumma and flies back into Welbeck and squirms agonisingly just wide
52 - Milan go close as the ball is whipped in from the right anfalls to Bonaventura in the area, but he puts his first-time shot over the bar
60 - Mkhitaryan is booked
61 - Koscielny gets a vital boot to the ball to take it away from Kessie who was racing to get on it
63 - Maitland-Niles comes on to replace Kolasinac
71 - Ramsey is booked for a high boot
80 - Holding replaces Ozil
85 - Elneny comes on for Chambers
Copyright 2025 The Arsenal Football Club Limited. Permission to use quotations from this article is granted subject to appropriate credit being given to www.arsenal.com as the source.