Hernanes put Lazio ahead from the penalty spot in the 20th minute after Stefan Radu was brought down inside the area by Atalanta's Andrea Massiello.
The visitors were then forced to play a man down as defender Stefano Lucchini was sent off after 52 minutes for a second bookable offence.
Atalanta goalkeeper Andrea Consigli made a string of saves to keep his team in the game but Lazio's Miroslav Klose put the result beyond doubt at the death.
The win, Lazio's first in the league since December 10, has lifted the Romans to fourth place, while Atalanta drop to 13th.
The hosts went into the game looking to make amends following last weekend's 4-0 defeat at Siena.
Lazio dominated the encounter at the Stadio Olimpico and almost went in front in the 17th minute.
Luciano Zauri fed Klose in the area and his left-footed strike was kept out by Consigli.
Lazio went ahead when Hernanes coolly struck his spot-kick past Consigli and into the bottom left corner of goal.
Atalanta almost equalised on the half-hour mark, though.
Ezequiel Schelotto found German Denis in the box and his goal-bound strike from 12 yards was saved by Lazio goalkeeper Federico Marchetti.
Before half-time, Lazio coach Edy Reja was forced to make a double substitution with Mobido Diakite and Francesco Matuzalem replacing Hernanes and Andre Dias through injury.
Early in the second half, Lucchini was given his marching orders after a late tackle on Tommaso Rocchi earned him his second booking.
In the 54th minute, Matuzalem almost doubled Lazio's advantage but his powerful free-kick went just wide of the far post.
The visitors then threatened and could have restored parity before the hour mark when Denis found space in the area and fired towards the far post but his attempt was saved by Marchetti.
With 20 minutes remaining, Zauri had a chance to kill the game off when he got on the end of Klose's cross but struck the ball just wide from a good position.
Klose then got his head on Zauri's cross and his effort was saved by Consigli.
The German forward made no mistake late on though when he made it 2-0 after getting in behind Senad Lulic's pass and firing past Consigli to wrap up the points.