The first half was a rather drab affair with neither side able to take the initiative – a measure of which was the nature of the opener.
Juan Vargas opened the scoring with a deflected free-kick with 27 minutes gone, and, while Milan toiled as they looked to get back into the match, the hosts struggled to get any sort of rhythm to their play.
Kaka buzzed around looking to create but he was sorely let down by his disappointing team-mates.
Milan began the second half in the ascendancy but could not turn their superior play into the hard currency of clear-cut chances and Fiorentina managed to keep their hosts at arm’s length.
Vincenzo Montella’s men doubled their advantage in the 73rd minute when Borja Valero pounced after Gabriel flapped at a Joaquin cross.
Milan could have immediately cut the arrears but substitute Riccardo Saponara trashed an Ignazio Abate centre over the bar.
Despite their travails, manager Massimiliano Allegri elected not to turn to the bench to the considerable talents of Robinho and Alessandro Matri, and there was a cacophony of whistles as the manager and his players left the pitch.