Goals from Kevin-Prince Boateng and Sulley Muntari gave AC Milan victory over Barcelona and a huge chance of making the Champions League last eight.
The Rossoneri defended in numbers and the two former Portsmouth players struck twice in the second half.
Boateng turned and fired in following a free-kick, before Muntari's close-range volley nine minutes from time.
Andres Iniesta fizzed a shot off target as Champions League favourites Barca had a subdued night.
Kings of Europe
- AC Milan have won the European Cup or Champions League seven times - in 1963, 1969, 1989, 1990, 1994, 2003 and 2007.
- Only Real Madrid, with nine triumphs, have won it more times than Milan.
- Striker Filippo Inzaghi scored twice the last time they won a final, beating Liverpool 2-1 in Athens.
- Barcelona have won the competition four times - in 1992, 2006, 2009 and 2011.
- Their last triumph was also against English opposition, with a 3-1 victory over Manchester United at Wembley.
Carles Puyol also headed wide following Muntari's first Champions League goal, but chances were only occasional for stand-in coach Jordi Roura's side as they slipped to their third defeat of the season.
It was a tactical masterclass by the hosts, who sprung a surprise result based on a tight, disciplined display in the first period but became more expansive after the break.
That said, Barcelona, who are top of La Liga by 12 points, lacked their usual creativity. Lionel Messi was only involved sporadically, and they paid for continually attempting to cut through the heart of the Milan defence.
The Italian club's excellent central midfielders, Riccardo Montolivo and Massimo Ambrosini, ensured that path was closed, and the win gives Milan a great opportunity to avenge last season's Champions League quarter-final defeat by Barcelona.
Back then, the two teams shared a 0-0 draw at the San Siro before the Catalans won 3-1 in the second leg, and on this evidence the four-time European Cup champions will need to significantly raise their game to get a repeat result at Nou Camp on 12 March.
The Spanish side barely mustered a chance in the first period as Massimiliano Allegri's Milan team worked tirelessly in midfield to shut down space and prevent the likes of Messi and Iniesta navigating through them.
When Messi did carve out some space on the edge of the box with some fine footwork, his shot was quickly blocked, while Xavi was limited to a long-range effort.
The best opportunities in a cagey first half went to Milan. Stephan El Shaarawy bore down on goal after a clever touch from Boateng but the Italian over-ran the ball, with Puyol seeing it out of play.
Boateng then clipped the resulting corner just wide of Victor Valdes's left post in front of an expectant home crowd.
Barcelona's domination of possession continued until after the break when the San Siro exploded into life as Boateng struck. The lively El Shaarawy drew a foul 30 yards out and when Montolivo fired in the free-kick, the ball hit Cristian Zapata on the edge of the box, allowing Boateng to swivel and drill in his left-footed shot.
Barcelona complained that the ball had hit Zapata's arm, but it had cannoned off Jordi Alba before it hit the AC Milan player.
The goal gave the Rossoneri added purpose and Giampaolo Pazzini hooked in a shot as the game became more even.
Milan were content to defend the width of the 18-yard box and Barca had few efforts on goal, save for Iniesta's fizzing shot which whistled past the post with 15 minutes left.
Muntari's goal then almost took the roof off after Milan broke down the right. El Shaarawy lifted the ball to the back post and his Ghanaian team-mate made no mistake with his left-foot strike.
- 32 Abbiati
- 05 Mexes Booked
- 17 Zapata
- 04 Muntari
- 10 Boateng
- 18 Montolivo
- 20 Abate
- 21 Constant
- 23 Ambrosini
- 92 El Shaarawy (Traore - 88' Booked )
- 11 Pazzini (Niang - 75' )
- 01 Amelia
- 02 De Sciglio
- 76 Yepes
- 12 Traore
- 36 Christante
- 19 Niang
- 22 Bojan
- 01 Valdes
- 02 Alves
- 03 Pique Booked
- 05 Puyol (Mascherano - 88' )
- 18 Alba
- 04 Fabregas (Sanchez - 62' )
- 06 Xavi
- 08 Iniesta
- 10 Messi
- 16 Busquets Booked
- 17 Pedro
- 13 Pinto
- 19 Montoya
- 11 Thiago
- 14 Mascherano
- 25 Song
- 09 Sanchez
- 37 Cristian Tello
Ref: Craig Thomson