The villain of the day. The Milan goalkeeper put his side into all sorts of trouble after just five minutes when he was dismissed for tripping Schelotto inside the box.
The Frenchman cut a frustrated figure all match and was fortunate not to be dismissed after several reckless challenges. Struggled to deal with Cassano's clever movement.
One of Milan's better defensive performers. Although Abbiati's red card restricted his license to roam forward, he looked solid defensively.
The former Parma defender struggled to cope with the pace of the front three though did produce a number of crucial blocks and headers to keep the scoreline down.
Inexplicably played Schelotto onside for the early penalty incident and struggled to cope with the pace of the Parma attacker.
N. de Jong
The Dutchman broke up the Parma attack with a number of well-timed challenges. However, Abbiati's red card restricted him from getting forward to assist the attack.
Combined well with Balotelli down the right and was at the heart of most Milan attacks. Offered good support to the Milan defence.
Made up for his anonymous first-half performance by providing the assist for Rami's goal. Struggled to cope with Parma's quick pressing game.
Won the penalty which led to the Milan equaliser but struggled to get to grips with the Parma midfield, showing signs of tiredness late on.
Despite jeers from the home crowd, he worked tirelessly up front for Milan, striking the post in the first half and coolly dispatching a penalty. However, he often struggled to get the better of Lucarelli.
The Parma shot-stopper commanded his area to good effect although he was rarely called into action.
The on-loan Inter winger impressed on his first start for the club, winning the early penalty and causing the Milan defence problems with his pace and darting runs.
The Brazilian impressed in Paletta's absence, winning a number of crucial headers to frustrate the Milan attack.
The on-loan Fiorentina full-back was rarely exposed defensively and offered good support going forward.
The Parma captain marshalled the threat of Balotelli excellently and made a number of well-timed challenges and interceptions.
The 30-year-old offered a terrific option on the overlap, regularly testing the Milan defence with a series of dangerous crosses.
Produced a tireless box-to-box performance on his return to the side and despite his lack of composure in front of goal, he was a constant threat to the Milan defence. Provided the assist for Cassano's second.
He moved the ball quickly in the midfield and helped Parma to dominate possession with his tireless work rate and confidence on the ball.
A tough-tackling performance from the veteran midfielder who afforded Kaka little space and broke up the Milan attack expertly.
Returned to haunt his former employers by scoring his 10th and 11th league goals of the season. He was a constant menace with his intelligent movement and ability to pick out a team-mate.
Caused the Milan defence problems with his pace. His tireless work rate was rewarded when he scored a stoppage-time header to wrap up the win.
Made a superb save to prevent a Mexes own goal in the first half and made several smart stops to deny Schelotto.
He made a superb impact from the bench, leading the Milan comeback with a brave header at the back post. Will be expecting to start against Lazio.
Caused the Parma defence problems with his strength but lacked the service to make the desired impact.