Former Italy striker Di Natale tapped in the winner after a slick one-touch move to give Francesco Guidolin's side their first league win in four matches.
The 36-year-old has now overtaken former Fiorentina marksman Gabriel Batistuta of Argentina on the all-time Serie A scoring charts to stand alone in 10th place with 185 goals.
Mid-table Milan have 35 points after their third league defeat under Clarence Seedorf and are six points behind fifth-placed Inter Milan, who occupy the last Europa League spot and host flamboyant Torino on Sunday.
"For commitment I can't fault them. We lacked decisiveness in front of goal in the first half. Their keeper had to make saves," said Seedorf.
Udinese moved up a place to 14th on 31 points with a win that will provide a huge boost to Udinese's Guidolin who was under pressure at the club after a series of poor results.
"It was a win against a great team in Milan. It was a great performance and we did really well to defend at the end," said Di Natale. "It was a win for everyone - the team, the fans and the president."
Milan rested a host of players with Tuesday's Champions League last 16 clash at Atletico Madrid in mind, with Milan trailing 1-0 from the first leg.
"We are convinced that any game of football can be won," said Seedorf. "Everyone saw how we played in the first leg and that's what gives us certainty (that we can win)."
However, even after bringing on striker Mario Balotelli, midfielder Michael Essien and tricky forward Adel Taarabt against an energetic Udinese his side were second best.
Milan started the match positively, with forward Giampaolo Pazzini going close three times in the first half.
He twice missed the target with headers before forcing a fine save from Udinese's 17-year-old goalkeeper Simone Scuffet with a volley in the 32nd minute.
But the second-half was a reminder of Milan's performances in the weeks leading up to previous coach Massimiliano Allegri leaving the club, with Robinho's header straight at Scuffet in the 49th minute the best the sluggish visitors could muster.
Di Natale's goal won the match but it was a wonderful team move that allowed the striker to tap the ball home.
Roberto Pereyra slipped a neat pass to Bruno Fernandes, who slid the ball across the area to give Di Natale the easiest of finishes to secure a deserved three points.
Runaway league leaders Juventus, who have an 11-point advantage, host fourth-placed Fiorentina on Sunday while second-placed AS Roma face a tough trip to Napoli, who are six points behind them in third spot.
Image: Antonio Di Natale of Udinese celebrates.
Photograph: Dino Panato/Getty Images
Indian Wells: Li, Federer win; Nadal survives scare
The 10 highest-paid female athletes!
EPL PHOTOS: Chelsea surge clear with Tottenham drubbing; United demolish West Brom
The most inspirational Indian sportswomen
A salute to India's forgotten sportswomen