Derek Forbort's point shot through traffic 57 seconds into the first period gave the Kings a 1-0 lead. It was Forbort's first goal in 45 games.
Flames goalie Mike Smith saved Anze Kopitar's one-timer at 16:10 of the second period, and Calgary defenseman Noah Hanifin hit the post with six seconds remaining.
"They didn't give us much the whole night," Flames forward Matthew Tkachuk said. "A lot of shots, not a ton of great chances. A couple posts. I think that they really buckled down in front of Campbell, and he made some good saves. [We] had some chances we could have put in, but I thought their goalie was good tonight."
Smith made a blocker save on Adrian Kempe's shorthanded breakaway 3:31 into the third period, but Jonny Brodzinski gave the Kings a 2-0 lead at 11:51 on a 2-on-1.
Tyler Toffoli scored an empty-net goal at 15:57 for the 3-0 final.
Smith made 17 saves.
"It's a great team. Tough building," Campbell said. "They have great fans here. It's a great environment. This is the fun time of the year.
"Obviously it [stinks] for us where we're at, but it's still fun to compete against teams that are getting ready for a run. Being in Canada, it's always fun playing hockey. It's a big win."