Coming into the game, the Flames stressed the need for discipline after taking 20 minutes of penalties in their 4-3 loss to the Sens in Ottawa on Monday night.
However, they were whistled for their first of three straight penalties in short succession 6:01 into the first when Matt Coronato was called for a trip.
And the Red Wings - without Patrick Kane in the tilt - made them pay quickly.
Alex DeBrincat one-timeded a feed from Michael Rasmussen just 32 seconds into the advantage.
Just over a minute later, Jonathan Huberdeau was tagged for interference and 51 seconds after the Flames killed it off, Huberdeau was back in the box for another interference call.
Larkin got called for a hold 27 seconds later, leading to some 4-on-4 action and then a short Calgary powerplay.
The Flames were outshot 8-7 in the opening stanza, with Daniil Miromanov getting a great look with time winding down, sent streaking up the right-wing off a nifty between-the-legs pass from Justin Kirkland in the Flames zone but Talbot gloved his offering.
Vladar was especially sharp in the second as Detroit outshot the visitors 10-5.
DeBrincat ran into Vladar and just as he got back up, Jonathan Berggren wireded a shot he kick saved.
The Flames had a 4-on-2 rush the other way later in the frame, Kadri firing a tight-angle shot that Talbot got a piece of with his shoulder.
Then it was time for more from Vladar, who made a save on a streaking Larkin and then stopped his follow-up rebound attempt.
His best save, though, came when he got across to rob Rasmussen on a backdoor attempt from Christian Fischer on a cross-ice pass on a 2-on-1.
Late in the period, he made a stop on Vladimir Tarasenko, the rebound going to Berggren who chopped it at the net and Vladar gloved the tricky offering.
Vladar was tested in the first minute of the third, coming across for another backdoor save on Fischer, then making another stop before ending up laid out belly down on the ice to freeze the puck.
They were unsuccesful on their third powerplay of the game in the period but pressed hard in the final frame before Zary tallied.