Fiorentina dominated the first half and had taken the lead through Riccardo Sottil, but Inter’s two goals in three minutes from Matteo Darmian and Edin Dzeko turned it around before a Nico Gonzalez dismissal.
These were two of the form teams in Serie A, the Viola coming off three consecutive victories, but missing Gaetano Castrovilli, Erick Pulgar and Lorenzo Venuti, giving Matija Nastasic his first start. The reigning Serie A champions were without Joaquin Correa, Stefano Sensi, Arturo Vidal and Christian Eriksen, but fresh from a 6-1 thrashing of Bologna.
There was an immediate scare, Samir Handanovic alert to smother at the feet of Nico Gonzalez, then he had to fingertip a Dusan Vlahovic strike over the bar and had his gloves stung by Cristiano Biraghi.
Alfred Duncan unleashed a screamer from distance that grazed the top of the Inter crossbar and the opening Fiorentina goal felt inevitable.
Gonzalez won an aerial challenge with Milan Skriniar and sprinted down the left, rolling across the six-yard box for Riccardo Sottil to come sliding in at the back post. Inter were furious, feeling Gonzalez had fouled Skriniar in the build-up.
Bartlomiej Dragowski flew to beat away a Hakan Calhanoglu free kick, which was arrowing its way towards the far top corner, while penalty appeals were rejected for a potential Biraghi handball, largely because it seemed to be outside the box.
Inter did get the ball in the net when Nastasic accidentally scored an own goal, but Ivan Perisic was offside before rolling across.
Inter got their equaliser with a well-worked move, Barella laying it off to Matteo Darmian, who sprung the offside trap for a precise angled drive into the far bottom corner.
Suddenly, it was turned on its head moments later, Edin Dzeko rising above the crowd to meet Calhanoglu’s corner and put Inter in front.
Fiorentina looked shell-shocked, Perisic flashing a dangerous effort across the face of goal, then Lautaro Martinez horribly scuffing a Barella roll across when he should’ve scored.
Alexis Sanchez also fired over after a Dragowski error, but Nico Gonzalez allowed the frustration to get the better of him. He loudly demanded a yellow card for Alessandro Bastoni’s shirt-tug, earning himself a yellow card for dissent, then continued to protest with sarcastic applause until the inevitable second booking.
Inter added a third late on, Roberto Gagliardini bursting through the centre and rolling across with the outside of his boot for Perisic to tap in from six yards. The Croatian becomes the 11th Inter player to score in Serie A this season.
Fiorentina 1-3 Inter
Sottil 23 (F), Darmian 52 (I), Dzeko 55 (I), Perisic 87 (I)
Sent off: Gonzalez 79 (F)
Match Events
0' The match is about to start!
8' CHANCE! Barella's long shot wide out
10' CLOSE! Vlahovic's shot denied by Handanovic
14' AGAIN! Handanovic makes decent save
17' Yellow Card! Skriniar booked
22' GOAL! Fiorentina 1-0 Inter (Sottil)
30' CLOSE! Calhanoglu's free-kick denied
38' Perisic offside! Inter's goal disallowed
51' GOAL! Fiorentina 1-1 Inter (Darmian)
54' GOAL! Fiorentina 1-2 Inter (Dzeko)
62' Yellow Card! Darmian booked
77' Second Yellow Card! Gonzalez sent off
86' GOAL! Fiorentina 1-3 Inter (Perisic)
Line-ups
Fiorentina XI: Bonaventura, Nastasic, Biraghi, A.Duncan, Benassi, B. Drągowski, Torreira, D. Vlahović, Milenkovic, N. Gonzalez, Sottil
Subs: Rosati, Callejon, A. Kokorin, P. Terracciano, Saponara, Odriozola, Amrabat, L. Martínez, Igor, Y. Maleh, A. Terzić, A. Bianco
Inter XI: Perisic, Darmian, Handanovic, Dzeko, De Vrij, Brozovic, Calhanoglu, Skriniar, Barella, Lautaro, Bastoni
Subs: Sanchez, Kolarov, A. Cordaz, Ranocchia, D'Ambrosio, Vecino, Dimarco, Gagliardini, Dumfries, Radu, M. Satriano, M. Sangalli