The 17-year-old showed some rawness when defending crosses, however he proved his shot-stopping potential with some fine saves to deny Pazzini and Robinho.
The young Croatian slotted effortlessly into the defence, producing a number of crucial interceptions and headers to deny the visitors.
The young Swiss wing-back showed good determination to get into promising attacking positions. However, he often lacked the composure to make the right decision in the final third.
A good box-to-box display from the Brazilian who offered good protection to the defence and was tidy in possession.
The French defender produced a splendid block to deny Muntari the opener and read the play excellently to frustrate the Milan attack.
Sometimes got the wrong side of his marker but produced a rugged display to keep Pazzini quiet.
Provided good protection to the back four and helped Udinese to keep possession with his tidy passing and good reading of the play.
The Argentine spurned a glorious one-on-one chance to open the scoring early on and struggled to get the better of De Sciglio in the first half. However, he improved as the game wore on and was heavily involved in the majority of Udinese's attacks.
A tenacious display from the Brazilian who did not allow the Milan midfielders time to settle on the ball. His quick and effective pressing game helped Udinese to steal back possession.
Proved an effective link between the midfield and Di Natale, creating a number of presentable opportunities for his team-mates. Provided the assist with a well-weighted pass.
A. Di Natale
Despite his advancing years, Di Natale's first touch and sharp eye for goal ensured he was a constant threat to the Milan defence. Scored the decisive goal - his ninth of the season - with a cool finish.
The veteran goalkeeper barely had a save to make but showed good awareness and decision-making to race off his line to claim the ball on numerous occasions.
The French defender looked unconvincing alongside Zapata, making several sloppy errors and picking up a yellow card which rules him out of Milan's next league match.
M. De Sciglio
The 21-year-old put in another impressive shift down the right, showing good stamina to get back and defend combined with a willingness to attack and deliver accurate crosses into the box.
The centre-back looked rusty on his return from injury, nearly gifting his former side the lead in the early minutes. He missed a golden chance to put Milan ahead and struggled with Muriel's pace late on.
A committed box-to-box performance from the Ghanaian who was strong in the tackle and looked tidy in possession.
Failed to stamp his authority on the game and could not provide goalscoring opportunities for his team-mates. Looked sluggish when tracking back.
The Dutchman produced a number of teasing crosses but his eagerness to get forward sometimes left Milan exposed.
The Japanese midfielder is still settling into Italian football but he looked sharp in the first half, showing some neat touches and creating openings. However, he tired as the game wore on.
The Slovenian struggled to cope with Udinese's quick pressing and often squandered possession. It was no surprise that he was replaced before the hour mark.
Impressed on his return to the side with his clever movement and eye for goal. He was surprisingly replaced after the hour mark.
The 29-year-old was given a rough time by the Udinese centre-backs though he did show his own physical presence at times, forcing Scuffet into two smart saves.