Antonio Di Natale and Luis Muriel had given Udinese a 2-1 win in last week's encounter, but Juan Manuel Vargas' goal for Fiorentina was to prove crucial.
Manuel Pasqual opened the scoring after 14 minutes of the second leg, firing high inside the near post with his left foot to level the aggregate score.
And the deciding goal came just after the hour mark when Juan Guillermo Cuadrado struck from outside the penalty area.
Udinese became desperate in their pursuit of an equaliser, with first Emmanuel Badu and then Maurizio Domizzi earning red cards during a fraught eight minutes of stoppage time.
The Viola will face Napoli or Roma in May's final, with the capital club taking a 3-2 advantage into Wednesday's second leg of their semi-final.