Lazio have now won seven Coppa Italia trophies - only Juventus (13) and Roma (9) have more
Lazio found two late goals to win the Coppa Italia final and deny Atalanta their first trophy since 1963.
On a filthy wet night in Rome both sides struggled to find any fluent football, although Atalanta twice hit the post.
Midfielder Sergej Milinkovic-Savic came off the bench to head in the opener before forward Joaquin Correa ran clear to wrap it up in stoppage-time.
Lazio will now play in next season's Europa League.
Fourth-placed Atalanta can still secure Champions League football for the first time if they win their last two games - against Juventus and Sassuolo.
But their chance of silverware is gone for another year as Lazio edged an ill-tempered game littered with bookings.
Former Liverpool midfielder Lucas would have been an unlikely scorer but headed wide for Lazio before former Middlesbrough midfielder Marten de Roon rattled the post for Atalanta.
Papu Gomez hit the post with a miscued cross as Atalanta continued to look the better side, before sub Milinkovic-Savic scored with Lazio's first effort on target when he headed in Lucas' corner.
Then, as Atalanta threw men forward Lazio broke and Correa did well to dance around goalkeeper Pierluigi Gollini and score.
Seven-time winners Lazio last won the cup in 2013.
5MasielloBooked at 36mins
11FreulerBooked at 79mins
15de RoonSubstituted forPasalicat 85'minutes
21CastagneSubstituted forGosensat 85'minutes
91ZapataBooked at 41minsSubstituted forBarrowat 84'minutes
41Ibañez da Silva
15Jacinto QuissangaBooked at 24minsSubstituted forRaduat 36'minutes
77MarusicBooked at 87mins
6LeivaBooked at 57mins
10Romero AlconchelSubstituted forMilinkovic-Savicat 79'minutes
19LulicBooked at 39mins
17ImmobileSubstituted forCaicedoat 67'minutes
13Fortuna dos Santos
Home TeamAtalantaAway TeamLazio
Shots on Target