The Swedish frontman joined Cristiano Ronaldo and Lionel Messi in hitting 300 goals in Europe’s top five leagues.
Udinese were on the verge of a shock win after taking the lead through a breakaway goal from Portuguese forward Beto.
But Ibrahimovic secured a 1-1 draw with a typically acrobatic finish to join a select band of forwards in the ‘300 Club’.
Udinese lost Isaac Success to an even later red card for a barge on Milan keeper Mike Maignan.
Alvaro Morata fired Juventus into a 32nd-minute lead at Venezia but Mattia Aramu’s second-half equaliser meant they had to settle for a 1-1 draw.
Dusan Vlahovic scored twice while Giacomo Bonaventura and Youssef Maleh were also on target as Fiorentina moved up to fifth with a 4-0 win over bottom side Salernitana.
In LaLiga, Sevilla closed the gap on leaders Real Madrid to five points after a Thomas Delaney cracker sank Athletic Bilbao 1-0.
Delaney hit the 38th-minute winner against the run of play, curling in a superb shot from the edge of the area into the top corner.
Espanyol won a seven-goal thriller at home to bottom side Levante.
Sergi Darder fired the hosts into a sixth-minute lead only for Jorge De Frutos and Son to put Levante ahead at half-time.
Raul De Tomas equalised four minutes into the second half but Jose Luis Morales put Levante back into the lead.
However, Javi Puado’s double made it 4-3 to Espanyol before Son was sent off towards the end.
A late Joselu equaliser gave Alaves a 1-1 draw against Getafe, for whom Enes Unai opened the scoring.
Alaves lost Florian Lejeune to a red card in stoppage time.
Cristiano Piccini’s winner four minutes from time gave Valencia a 2-1 victory at home to Elche.
Bundesliga leaders Bayern Munich came from a goal down to beat Mainz 2-1 at the Allianz Arena.
The visitors took a surprise lead courtesy of Karim Onisiwo’s first-half header but goals from Kingsley Coman and Jamal Musiala secured Bayern’s victory.
Borussia Dortmund lost ground in second after a 1-1 draw at Bochum.
They were grateful for a point after needing Julian Brandt’s late equaliser to cancel out Sebastian Polter’s first-half penalty.
Chris Richards scored a stoppage-time winner as Hoffenheim beat Freiburg 2-1.
David Raum had fired the visitors ahead after just three minutes but Bayern target Nico Schlotterbeck equalised for Freiburg.
Josko Gvardiol, Andre Silva, Christopher Nkunku and Benjamin Henrichs all found the net to give Domenico Tedesco a winning start in charge of RB Leipzig with a 4-1 victory over Borussia Monchengladbach.
Konstantinos Mavropanos celebrated his 24th birthday with a goal and Philipp Forster added a second as Stuttgart won 2-0 at fast-fading Wolfsburg, while Stevan Jovetic and Davie Selke fired Hertha Berlin to a 2-0 win against Arminia Bielefeld.
In France, Reims beat St Etienne 2-0 and and Montpellier were convincing 4-0 winners at Brest.