Larry Fitzgerald’s second touchdown catch of the game in the third quarter put the Cardinals up, 21-7, on the 49ers, midway through the third quarter.
The 49ers kept it interesting with an immediate answer, though, driving for a score on a Carlos Hyde touchdown run to pull within 21-14.
The defenses dominated early and the 49ers scored first, but a flurry of 49ers miscues -- fumbles, penalties and blown coverages -- allowed the Cardinals to take control. Fitzgerald had a 21-yard touchdown catch late in the first half. His second touchdown catch from Drew Stanton covered 29 yards.
The game started with seven punts before the offenses got rolling. Now, the Cardinals are really rolling. David Johnson also had a third quarter touchdown run to give the Cardinals their first lead.