Cecil allowed just one hit while walking two and striking out two, and he hasn't allowed a run in six Grapefruit League innings.
Left-hander Francisco Liriano started the game for the Twins, and he cruised through the first two innings before giving up four runs in the third. Snider and d'Arnaud hit back-to-back two-run doubles off Liriano to give the Blue Jays an early lead.
The Twins got on the board with two runs in the fourth, as Trevor Plouffe and Steve Pearce each laced RBI singles. Joe Mauer also went 2-for-3 for the Twins after going hitless in his previous four games.
"It was one of those games where there wasn't a lot of movement on our side," Twins manager Ron Gardenhire. "We got behind early and played a little bit too much defense with not enough offense."
The Blue Jays blew the game open in the sixth with four runs against right-hander Alex Burnett. David Cooper and Adeiny Hechavarria each had run-scoring doubles while Jonathan Diaz added an RBI single.
Up next: Right-hander Jason Marquis is set to make his third Grapefruit League start on Wednesday against the Phillies at 12:05 p.m. CT on MLB.TV at Bright House Field. Marquis has allowed five runs on six hits over 4 2/3 innings so far this spring. Brian Duensing, Jeff Manship, Esmerling Vasquez, Luis Perdomo, Jeff Gray and Aaron Thompson are also scheduled to pitch for the Twins. Phillies ace Roy Halladay starts for Philadelphia.