© Getty Images
The home side took the lead in the first minute when Mariano Izco caught Lazio unaware after just 41 seconds.
Stefano Mauri scored on his return from a six-month suspension when he headed home in stoppage time to even things up.
However, Catania stunned the visitors with an early goal in the second half when Nicolas Spolli rose highest from a free kick to power a header home.
Gino Peruzzi made it three for the struggling Catania 10 minutes later when he exchanged passes on the edge of the box before rolling it into an empty net.
The win moves the Sicilian club out of the relegation zone.