Emmanuel Sanders caught six passes for 102 yards and a touchdown and threw for another, as Denver (3-4) snapped a four-game losing streak. Broncos quarterback Case Keenum went 14 of 21 for 161 yards, a touchdown and an interception.

Rookie Josh Rosen finished 21 of 39 for 194 yards, a touchdown and three picks as Arizona (1-5) failed on its first seven third-down conversion attempts after going 0-for-10 last week. He limped off in the final minutes after getting sacked for the sixth time.

Entering last in total offense and 31st in scoring, the Cardinals got off to a disastrous start. On the second play from scrimmage, Rosen’s pass was tipped by Derek Wolfe and intercepted by Todd Davis, who returned it 20 yards for a 7-0 lead.

After an Arizona three-and-out, the Broncos’ offense marched 77 yards in six plays on its first possession for a 14-0 lead. Sanders capped it with a 28-yard reverse pass to rookie wideout Courtland Sutton, who made a diving grab.

A 43-yard Phil Dawson field goal cut it to 14-3 before Denver’s defense scored again. Rosen threw a slant to J.J. Nelson, who stopped his route as Chris Harris Jr. intercepted it and returned it 53 yards for a 21-3 advantage with 2:13 left in the first.

Keenum opened the Broncos’ next possession with a 64-yard bomb to Sanders two plays into the second quarter, pushing the lead to 28-3.

Rookie back Royce Freeman’s 1-yard plunge 21 seconds before halftime made it 35-3. The Broncos outgained the Cardinals 237 to 82 before the break.

Rosen hit Larry Fitzgerald from 4 yards out midway through the third to cut into the lead.

Phillip Lindsay’s 28-yard scamper and Brandon McManus’ 41-yard field goal capped the scoring. Both were set up by strip-sacks from Von Miller, who added four QB hits.