Liverpool's Champions League hopes took a shattering blow as Fiorentina claimed an impressive victory in a delirious Stadio Artemio Franchi.
This was their first away defeat in Europe since the semi-final defeat at Chelsea in April 2008, and only their ninth away reverse in 38 attempts in the competition under boss Rafael Benitez.
Montenegro international Stevan Jovetic did the damage with a quick-fire double inside 10 first-half minutes.
Liverpool had no answer to the 19-year-old's drive and pace, and their Group E future is now under serious threat.
Liverpool did not manage a shot on target in a disappointing first period and although they fought back after the break, Fiorentina were not going to let a prized victory escape their grasp.
Benitez's response to the loss of Javier Mascherano with a hamstring injury was to recall Brazilian defender Fabio Aurelio to his side.
Aurelio has had only a Carling Cup run-out against Leeds after a summer knee operation, and he was be used in a midfield role against the Italians, who are fourth in Serie A.
Otherwise it was the same Liverpool side that beat Debrecen in the first group match.
Aurelio was used in a holding midfield role to allow Steven Gerrard to continue his advanced role supporting Fernando Torres.
But it barely worked, with Fiorentina quicker and more mobile. Martin Skrtel, at the back, had to be at his best to halt a run and shot from Jovetic, who from the resulting corner set up Marco Marchionni for an overhead effort that just cleared the bar.
Jovetic saw another effort flash wide after 22 minutes, Adrian Mutu having created the opening having beaten both Lucas and Aurelio in midfield.
There had been constant indecision in the Liverpool defence, and a failure to retain possession in midfield, and they were punished after 27 minutes.
Mutu was in a clear offside position on the edge of the box, but Zanetti's through ball was aimed at Jovetic - running from an on-side position - who was allowed to close in on Jose Reina before guiding the ball past the Spaniard.
Reina needed to save well from Vargas soon after as Fiorentina sought to capitalise on their success.
The second was not long coming. After 37 minutes Marchionni crossed from the right and the ball found Vargas on the left.
His low shot to the near post was deflected past Reina by Jovetic.
Liverpool needed something quickly after the break, and Lucas saw a powerful header flash just over the bar inside a minute of the re-start, before Sebastien Frey beat away a Dirk Kuyt drive.
Gerrard miskicked after good work from Kuyt, before Torres saw a low header deflected wide from Gerrard's cross.
Aurelio shot wide from a Torres set-up, but Fiorentina looked to have weathered the Liverpool storm at the beginning of the half.
Gerrard, who had been strangely quiet during the game, then saw a shot charged away by Massimo Gobbi from Lucas' chip.
Ryan Babel was sent on for Emiliano Insua after 71 minutes, with Aurelio switching to left-back. Fiorentina responded by sending on an extra defender, Martin Jorgensen for Vargas.
Skrtel was next to venture forward, and he got to the byline before crossing for Torres to fire over. Seconds earlier a frustrated Torres had been penalised as he set up Kuyt, who fired past Frey only to have the effort disallowed.
Next on was Andriy Voronin in place of Kuyt, as Liverpool searched for any way back into the match. Gerrard lifting a 20-yarder over did not help that quest.
This was their first away defeat in Europe since the semi-final defeat at Chelsea in April 2008, and only their ninth away reverse in 38 attempts in the competition under boss Rafael Benitez.
Montenegro international Stevan Jovetic did the damage with a quick-fire double inside 10 first-half minutes.
Liverpool had no answer to the 19-year-old's drive and pace, and their Group E future is now under serious threat.
Liverpool did not manage a shot on target in a disappointing first period and although they fought back after the break, Fiorentina were not going to let a prized victory escape their grasp.
Benitez's response to the loss of Javier Mascherano with a hamstring injury was to recall Brazilian defender Fabio Aurelio to his side.
Aurelio has had only a Carling Cup run-out against Leeds after a summer knee operation, and he was be used in a midfield role against the Italians, who are fourth in Serie A.
Otherwise it was the same Liverpool side that beat Debrecen in the first group match.
Aurelio was used in a holding midfield role to allow Steven Gerrard to continue his advanced role supporting Fernando Torres.
But it barely worked, with Fiorentina quicker and more mobile. Martin Skrtel, at the back, had to be at his best to halt a run and shot from Jovetic, who from the resulting corner set up Marco Marchionni for an overhead effort that just cleared the bar.
Jovetic saw another effort flash wide after 22 minutes, Adrian Mutu having created the opening having beaten both Lucas and Aurelio in midfield.
There had been constant indecision in the Liverpool defence, and a failure to retain possession in midfield, and they were punished after 27 minutes.
Mutu was in a clear offside position on the edge of the box, but Zanetti's through ball was aimed at Jovetic - running from an on-side position - who was allowed to close in on Jose Reina before guiding the ball past the Spaniard.
Reina needed to save well from Vargas soon after as Fiorentina sought to capitalise on their success.
The second was not long coming. After 37 minutes Marchionni crossed from the right and the ball found Vargas on the left.
His low shot to the near post was deflected past Reina by Jovetic.
Liverpool needed something quickly after the break, and Lucas saw a powerful header flash just over the bar inside a minute of the re-start, before Sebastien Frey beat away a Dirk Kuyt drive.
Gerrard miskicked after good work from Kuyt, before Torres saw a low header deflected wide from Gerrard's cross.
Aurelio shot wide from a Torres set-up, but Fiorentina looked to have weathered the Liverpool storm at the beginning of the half.
Gerrard, who had been strangely quiet during the game, then saw a shot charged away by Massimo Gobbi from Lucas' chip.
Ryan Babel was sent on for Emiliano Insua after 71 minutes, with Aurelio switching to left-back. Fiorentina responded by sending on an extra defender, Martin Jorgensen for Vargas.
Skrtel was next to venture forward, and he got to the byline before crossing for Torres to fire over. Seconds earlier a frustrated Torres had been penalised as he set up Kuyt, who fired past Frey only to have the effort disallowed.
Next on was Andriy Voronin in place of Kuyt, as Liverpool searched for any way back into the match. Gerrard lifting a 20-yarder over did not help that quest.