Denver — Kirk Cousins was perfect in his cameo, and then kicked back and watched two former Broncos quarterbacks tear apart their old teammates.
Cousins, the former Michigan State star, completed all four of his passes in the Vikings' 42-28 exhibition victory Saturday night, including a 1-yard touchdown strike on a quick slant to Stefon Diggs.
"I think it was a smooth first drive but it is a small sample size and the next couple of weeks will be a good test for us," Cousins said.
Diggs called it a good first step.
"He's a good quarterback," Diggs said. "He makes some great throws."
Case Keenum wasn't nearly as sharp in his Denver debut, completing just 1 of 4 passes for 5 yards spanning two drives.
"It's just frustrating not playing well and you don't have a chance to bounce back from it," Keenum said.
Cousins was the crown jewel of this year's free-agent class of quarterbacks, signing an $84 million, three-year deal in Minneapolis. That meant Keenum was out two months after leading the Vikings to the NFC championship, and he signed a $36 million, two-year deal with Denver.
The Broncos then traded their starter, Trevor Siemian, to the Vikings to serve as Cousins' backup — so long as he beats out Kyle Sloter, another former Denver QB.
That left Paxton Lynch and Chad Kelly vying for No. 2 duty in Denver.
So, this preseason opener was filled with quarterback intrigue.
After Cousins' single series — one in which he didn't have to face Von Miller — Siemian led Minnesota on three scoring drives, most notably a screen pass to Roc Thomas that beat the blitz for a 78-yard score .
Siemian was 11 of 17 for 165 yards, two TDs and an interception against his old team.
"It was a little weird for sure, but good to see old buddies," Siemian said.
Lynch, the former first-rounder twice beaten out by Siemian in Denver, was just 6 of 11 for 24 yards and an interception.
"Obviously I'm upset," he said.
Despite 17 yards passing overall in the first half, the Broncos only trailed 24-14 at halftime thanks to Isaiah McKenzie's 78-yard punt return for a TD and rookie Royce Freeman's 23-yard TD scamper — Denver's only first down before halftime.
Just when the crowd was starting to lament losing Siemian and Sloter, in came Kelly to fire up the crowd.
Kelly threw a 36-yard touchdown pass to tight end Matt LaCosse. Amid chants of "Kelly! Kelly!" he also drove Denver 85 yards in 11 plays, capping the drive with a 19-yard strike to running back Phillip Lindsay to put the Broncos on top 28-27 with 10 minutes remaining.
Sloter, who was cut by Denver a year ago, responded by throwing a 9-yard touchdown pass to Chad Beebe with six minutes left to put the Vikings back on top. His strike to Jeff Badet for the 2-point conversion made it 35-28.
Safety Jack Tocho picked off Kelly at the Denver 30-yard line with 5:23 left, and Sloter sealed it with a 14-yard bootleg for the score.
Sloter was 9 of 11 for 69 yards and Kelly was 14 of 20 for 176.
Lynch might be losing in his battle to be the backup, but he insisted he's "excited for Chad."
"Chad's been playing really well and he deserves that," Lynch said. "He's a good kid."
Broncos coach Vance Joseph wasn't quite ready to elevate Kelly to No. 2 QB, saying he had to study the film.
"Obviously, Case is the starter, so that's my main concern," Joseph said. "Chad has played well. He played well tonight, outside of the one interception, which led to a score for those guys. He's a guy that plays with a lot of confidence. That's a good deal."
Joseph's faith in McKenzie finally paid off with his punt return for a score.
"Huge for him," said Joseph, who stuck with McKenzie last year despite a half-dozen fumbles. "He's obviously a talent. His issue last year wasn't talent. It was more decision-making. We're helping him fix that so he can help us win games."
Broncos safety Jamal Carter left in the second quarter with a hamstring injury. Former Michigan tight end Jake Butt made his NFL debut, starting in place of Jeff Heuerman (left knee), and Max Garcia started in place of left guard Ron Leary (knee)
More NFL preseason
(At) Arizona 24, L.A. Chargers 17: Christian Kirk's 38-yard punt return on his first touch as an NFL player set up an early touchdown for Arizona in its preseason opener.
Rookie Josh Rosen completed 6 of 13 passes for 41 yards in his Arizona debut, playing the whole first half except the opening series.
Geno Smith, battling Cardale Jones for the right to back up the Chargers' Philip Rivers, completed 14 of 23 passes for 218 yards, including a 47-yard touchdown throw to Geremy Davis. He was intercepted once.
With Rivers sitting this one out, Jones started and played nearly the entire first half, completing 6 of 12 passes for 50 yards.
Kirk, Arizona's second-round draft pick out of Texas A&M, took the Chargers' early punt and broke free. He might have taken it all the way had he not slipped trying to make a move against punter Drew Kaser.
Linebacker Brandon Marshall and wide receiver Demaryius Thomas weren’t with their teammates on the sideline for the national anthem prior to the Denver Broncos’ game against the Minnesota Vikings on Saturday night.
Marshall and Thomas emerged from the tunnel behind the Broncos’ bench after the anthem was over.
In Arizona, Los Angeles Chargers starting left tackle Richard Okung raised his fist during the anthem prior to the team’s game against the Cardinals.
The league and the NFLPA have yet to announce a policy for this season regarding demonstrations during the anthem after the league initially ordered everyone to stand on the sideline when the anthem is played, or remain in the locker room.
The Chiefs will be without starting safety Daniel Sorensen for the start of the season after he had surgery to repair a broken shin bone and damage to his left knee.
... Jets linebacker Kevin Pierre-Louis has been suspended by the NFL for the first game of the regular season without pay for violating the league’s substance abuse policy. He was arrested and charged in January with several misdemeanors, including possession of marijuana, after a traffic stop in suburban Kansas City. In March, he reached a plea deal in which the marijuana possession charge would be dropped if he completes a one-year probation.
... The Jaguars have removed defensive end Dante Fowler from the physically unable to perform list. Fowler missed the first two weeks of training camp while recovering from a shoulder injury sustained late last season.