AC Milan stunned Barcelona 2-0 in the first leg of its Champions League last-16 tie on Wednesday, beating the Spanish giant for the first time in eight matches.
Kevin-Prince Boateng gave Milan the lead in controversial circumstances in the 57th minute. Cristian Zapata appeared to handle Riccardo Montolivo's assist in the buildup.
Barcelona players protested but to no avail and Gerard Pique was booked in the process.
Sulley Muntari sealed the win nine minutes from time with a well-worked goal.
It was a deserved win for Milan, which contained Barcelona's potent attack impressively, allowing it just two shots on target all match.
"We didn't concede anything in defense and we had several chances," Milan coach Massimiliano Allegri said. "But it wasn't perfect, we were a bit lacking with the last ball in the first half, but the team grew in the second. I think this is an important victory which will put us through. We could even have won 3-0, but I understand tiredness set in a bit."
The result was a massive boost to Milan's turnaround from a dreadful start to the season. Massimiliano Allegri's side was 15th in the Italian league after eight games but has risen to third.
It still went into the home match as a firm underdog against a Barcelona side which has lost only twice all season in the league and in Europe.
It was Barcelona's first loss by two goals since a 3-1 defeat to Real Betis in the Spanish Cup on Jan. 19, 2011.
"It was harder than usual for us to score," said Barcelona assistant coach Jordi Roura, in charge of the team while Tito Vilanova undergoes medical treatment in New York. "Milan was very organized, very strong in defense and that caused us a lot of problems. We were also playing on a pitch that wasn't worthy of this competition. We controlled in the first half, we didn't create chances but neither did they." While the teams knew each other well having played each other four times last season, this was a much-changed Milan side after losing experienced players such as Zlatan Ibrahimovic, Thiago Silva, Alessandro Nesta and Clarence Seedorf in the offseason.
Milan was also without Mario Balotelli, who was cup tied, and Robinho, Mathieu Flamini, Antonio Nocerino, Daniele Bonera, Luca Antonini and Nigel De Jong, who were all injured.
However, it was the Italian side which had the better opportunities in the first half and almost scored in the fifth minute when Muntari's speculative volley from outside the area sailed narrowly over the crossbar.
Barcelona's first chance came in the ninth but Philippe Mexes made a perfectly timed tackle to clear Cesc Fabregas' cross away from the waiting Pedro Rodriguez.
Milan was under increasing pressure in its own penalty box but managed to break for a promising counterattack only for Muntari to overhit a pass which would have sent Stephan El Shaarawy clean through.
El Shaarawy had a better chance when he cut inside the right side of the area but Barcelona captain Carles Puyol tackled him as he was about to unleash a shot.
From the resulting corner Boateng curled an effort just past the far post. Giampaolo Pazzini was a whisker away from connecting with what would have been a header into an empty net.
Milan was defending well and not allowing Barcelona a sight of goal. Xavi went closest with a 30-yard effort which Milan goalkeeper Christian Abbiati gathered comfortably.
El Shaarawy went close again 10 minutes from halftime when, at full stretch, he just failed to get a toe to Boateng's throughball.
The young striker won a free kick 10 minutes after the break when he was brought down by Dani Alves. It was squared to Montolivo, whose effort appeared to be handled by Zapata as it fell to Boateng, who swivelled and fired it into the bottom right corner.
Lionel Messi, who had been kept quiet by Milan, had a chance to level with a free kick in a dangerous position, but he drove it well over the crossbar.
Andres Iniesta also went close in the 76th with a snapshot just past the right post.
Messi did better with another free kick, on the opposite side, but sent it over the crossbar again.
Milan doubled its lead in the 81st. Substitute M'Baye Niang's cross was flicked on by El Shaarawy to Muntari, who found himself in acres of space to volley past Victor Valdes.
Barca almost scored a valuable away goal late on, but Puyol headed a corner just wide of the left upright much to the satisfaction of spectator Novak Djokovic, the tennis star who is a fervent Milan fan.
Information from The Associated Press was used in this report.