Nikola Milenkovic menjadi penentu kemenangan Fiorentina lewat golnya pada menit 90+3 ketika selama 14 menit terakhir mereka harus bermain dengan sepuluh orang.
Fiorentina kini menantikan Juventus atau Sassuolo yang akan menjadi lawan mereka dalam semifinal dua leg mendatang.
Kedua tim mengalami kekalahan berat di Serie A, cedera dan kehilangan pemain besarnya dalam jendela transfer Januari.
Pertandingan sudah berlangsung dramatis sejak awal ketika VAR mengingatkan wasit bahwa Marten de Roon menginjak kaki Nico Gonzalez tepat di garis kotak penalti.
Kryzsztof Piatek lalu mengkonversi tendangan penalti yang sekaligus gol kesembilan dalam 11 penampilannya dalam Coppa Italia.
Sebuah tendangan melengkung dari Nico Gonzalez berhasil digagalkan kiper, sementara tusukan Jeremie Boga mulai dari daerah pertahanan sendiri akhirnya diblok Igor. Sedangkan upaya Ruslan Malinovskyi malah melebar dari gawang.
Atalanta menyamakan kedudukan dari gol menakjubkan yang disarangkan Davide Zappacosta yang melengkung masuk ke sudut jauh atas dari sudut yang sulit.
Tuan rumah memimpin sebelum turun minum ketika Zappacosta menyodorkan umpan kepada Boga namun sentuhan kakinya tak berhasil memasukkan bola ke gawang lawan, sementara Mario Pasalic gagal memanfaatkan bola mantul.
Sundulan Piatek yang memanfaatkan tendangan bebas Cristiano Biraghi melebar tipis di atas mistar gawang, tetapi Atalanta membalikkan keadaan ketika Boga mengecoh bek Lucas Martinez-Quarta untuk menyarangkan bola ke gawang Fiorentina. Ini gol pertamanya untuk Atalanta sejak meninggalkan Sassuolo pada Januari.
La Viola kembai mendapatkan hadiah penalti ketika Teun Koopmeiners terlambat menghentikan Youssef Maleh yang sudah tanpa bola sehingga dinyatakan pelanggaran. Tendangan penalti Piatek sempat ditepis Musso, tapi dia sigap menyambar bola mantul untuk mengubah kedudukan 2-2.
Fiorentina bermain dengan 10 pemain, saat Martinez-Quarta menerima kartu kuning keduanya karena melakukan tekel berbahaya kepada Muriel.
Mengutip laman football-italia, drama belum juga berakhir ketika tendangan bebas Crisitano Biraghi diolah oleh pemain pengganti Nikola Milenkovic menjadi gol dari tepi kotak ke sudut jauh bawah.
VAR sampai perlu beberapa menit untuk memeriksa potensi handball dan offside, tetapi wasit kemudian menyatakan sebagai gol sah. Fiorentina pun menang 3-2.