Full back Stephan Lichtsteiner, who spent three seasons at Lazio before joining Juventus, scored the only goal in the 66th minute as his side continued their excellent recent form.
After a slow start to the season, Juventus have won their last 10 Serie A games to put them second in the table and back in the hunt for a fifth successive league title. They have also reached the last 16 of the Champions League.
Juve, who thumped neighbours Torino 4-0 in the previous round, will face old rivals Inter Milan in a two-leg semi-final.
Lichtsteiner snapped up a rebound and the ball crossed the line before Lazio goalkeeper Etrit Berisha could clear it, after Simone Zaza's shot had hit the post.
News that makes sense
Your trusted source for staying up-to-date with the world around you. Get free daily news updates and analysis, straight to your inbox.
Zaza was fielded alongside Alvaro Morata in a second-choice front line as coach Massimiliano Allegri rested Paulo Dybala and Mario Mandzukic.
"I don't like to use the word rotation because we have a competitive squad of an excellent standard," Allegri told reporters.
"Today, I would like to compliment (midfielder) Stefano Sturaro, Zaza and Morata, who has improved a great deal, and (Martin) Caceres, who contained (Lazio forward) Keita Balde, they all played a good match. It's difficult to leave anyone out."
(Writing by Brian Homewood in Berne, editing by Ed Osmond)
