Elsewhere, Fiorentina moved up to third at the expense of AC Milan, who host Catania in Sunday's late match, thanks to a 3-0 rout away to Sampdoria.
Pablo Osvaldo scored a hat-trick and Erik Lamela was also on target as Roma trounced Siena 4-0 at the Olympic Stadium, while Palermo moved out of the relegation zone thanks to a shock 1-0 win at home to Inter Milan. Inter's 13th reverse of the season has left I Nerazzurri in seventh, eight points off Fiorentina, who occupy the third and last Champions League place.
Juventus started the day having seen their 11-point lead over Napoli reduced to eight after the southerner's win over Pescara in Saturday's late game. And after a stubborn display from Torino at a rain-hit Olympic Stadium, it took a sublime goal from Vidal four minutes from the final whistle to send Juve's bench into raptures.
Six minutes later Marchisio sealed Juve's 25th win of the campaign which restored their 11-point lead on Napoli with just 12 points up for grabs in the remaining four games. Torino came into this match determined to end a victory drought over their city rivals which stretched back to 1995.
Indeed, I Granate had not scored against Juventus in a league game since a 2-2 draw in 2002, but Giampietro Ventura's side put those sorry statistics to one side as they set about frustrating the visitors. In a balanced first half, Juve came close through Mirko Vucinic, then Vidal, who sent a header from Stephan Lichsteiner's cross over Jean-Francois Gillet's crossbar on the quarter-hour.
On 18 minutes Frenchman Paul Pogba combined with Lichsteiner, who delivered for a sliding Marchisio at the far post only for Gillet to dive to the rescue. The ball fell to Vucinic and the rebound from his effort dropped for Pogba, who failed to make real contact.
Torino went on to enjoy a period of brief domination but without really piercing Juve's tight three-man defence, which was being given adequate cover by wing backs Lichsteiner and Kwadwo Asamoah. On 37 minutes Pogba rose above the Torino defence to send Andrea Pirlo's freekick straight at Gillet, while at the other end Argentine midfielder Mario Santana unleashed a drive from 20 metres which Gianluigi Buffon tipped over in spectacular fashion.
There was less drive and ambition for either side in the second half and on 70 minutes Juve coach Antonio Conte replaced Lichsteiner with Uruguayan Martin Caceres and Vucinic with Fabio Quagliarella. Torino had earlier replaced striker Riccardo Meggiorini with Jonathas and the Brazilian narrowly failed to make contact with Alessio Cerci's inviting pass across goal while Leonardo Bonucci was tugging at his shirt.
Torino's claims for a penalty were waved away and on the counter Juve came close to breaking the deadlock when Asamoah delivered a great cross to the back post for Pogba, only for the Frenchman to somehow send his effort wide. Moments later, Marchisio squared the ball for Vidal and from 25 metres out the Chilean took one touch before beating Gillet in the Torino net with a sublime dipping shot.
Torino were reduced to 10 men in the closing stages when Polish defender Kamil Glik saw red for a second bookable offence following a foul on Quagliarella, meaning he has been sent off in both derbies this season. In the second minute of injury time, Juve made it two.
Andrea Pirlo's freekick to the back post was headed back across goal by Quagliarella, and while Vidal missed with a diving header it left Marchisio free to fire into the top of the net.