Lazio's players took to the pitch with special edition ‘AD10S’ jersies in honour of former Argentina and Napoli great Maradona who died last week aged 60.
But the host soon trailed after Argentine Roberto Pereyra set up Turkish midfielder Tolgay Arslan for Udinese's first goal against Lazio in the Stadio Olimpico in six years, after quarter of an hour.
Rodrigo De Paul then set up fellow Argentine Ignacio Pussetto for the second just before the break, and provided the assist for compatriot Fernando Forestieri's third midway through the second half.
After his goal, Pussetto opened his two hands wide, to symbolise the number 10, Maradona's jersey number.
Forestieri dedicated the success to Maradona after the match: "This victory is for him!"
"After the goal I felt like crying, Diego was the greatest of all time," said Forestieri.
Lazio looked weary after the 3-1 Champions League win over Zenit Saint Petersburg, but pulled a goal back through a Ciro Immobile penalty after 74 minutes.
The Romans are midtable in ninth, six points behind leaders AC Milan, who host Fiorentina on Sunday.
"It's a bad defeat, we need to reset as soon as possible," said coach Simone Inzaghi, whose side have picked up five points in five home games this season.
"We knew that the Champions League saps energy, other teams also struggled this weekend, but I expected more from the lads.
"We all take responsibility, me first of all."
The north-eastern side achieved back-to-back wins for the first time this season, to move up to 12th position.