Eight goals in a breathtaking affair ...Alexandre Pato traded first-half strikes and Alexis Sanchez gave the visitors the lead shortly after the break.
Di Natale completed his brace in the 66th minute and Medhi Benatia scored an own goal in the 78th minute to give Milan a lifeline. Pato completed his brace shortly, but Udinese managed to pick themselves up and found another goal just before injury time. Zlatan Ibrahimovic had the final saying, however, as he drew the game level moments before the final whistle.
Udinese took the game by storm, pressing the hosts all over the pitch and looked like the better team early in the game. However, it was the Rossoneri who threatened to open the scoring first as Pato rifled a shot from the left wing over the bar in the 10th minute.
Francesco Guidolin's men soon began to take control of the game and were looking increasingly dangerous in attack. In the 25th minute Goekhan Inler had a long-range drive narrowly miss over the bar and around the half-hour mark Chiristian Zapata flashed a header over, following a cross by Giovanni Pasquale.
The go-ahead goal finally came for Udinese in the 35th minute when Di Natale reflexively volleyed home the rebound from an Inler shot that came off the right post. The goal woke up Milan who started throwing bodies forward in search of an equaliser.
In the 40th minute Zlatan Ibrahimovic blasted a free-kick into the wall as Massimiliano Allegri's men were picking up momentum. The striker once again was at the centre of action three minutes later when he found himself on the end of a wonderful cross by Ignazio Abate, but slipped and lost the ball after controlling it on his chest.
The Swede managed to redeem himself moments later, however, as he supplied an inch-perfect cross from the right side of the box for Pato just outside the six-yard box, and the Brazilian had not trouble putting it away.
The hosts started the game brightly with Robinho hitting a stinging effort from just inside the box in the 50th minute which Samir Handanovic somehow managed to parry. The Rossoneri were to be pegged back moments later, however, as Sanchez was at the right place and at the right time to flick a Mauricio Isla's cross in at the near post with a header.
Milan started attacking recklessly in an effort to salvage something from this game, but were soon to be punished for that on the break. In the 66th minute Inler stole a ball in midfield from Seedorf and then slid a neat pass for Di Natale, who managed to shrug off the challenge from Daniele Bonera and slot home.
The Rossoneri went close through Robinho in the 71st minute, but the Brazilian blasted his finish wide of the left post. Benatia deflected a cross from Thiago Silva into the net just before the eighty-minute mark to give Milan a lifeline.
The hosts managed to complete a stunning comeback in the 81st minute when Pato stabbed home a pass from substitute Antonio Cassano to draw the game level. Udinese were not down and out yet, however, as substitute Denis slotted home a cross by Isla on the break moments before injury time.
Ibrahimovic had the final saying, however, as in the 93th minute he managed to draw the game level with a fine goal from near the penalty spot.
Following tonight's result, Milan are first in the standings, while Udinese are eighth. The Rossoneri's next league game is a visit to Lecce on the 16th January, while the Bianconeri travel to Genoa on the same day.
Follow Goal.com on . Get the latest football news direct... Check out Goal.com's page; be part of the best football fan community in the world!