MINNEAPOLIS -- The main event of the preseason (if there is one) is upon us. The San Francisco 49ers will visit the Minnesota Vikings on Sunday night in Week 3 of the preseason from U.S. Bank Stadium.
This game is commonly referred to as the "dress rehearsal" for the regular season and will give us an extended look at the 49ers starters. Expect to see both the first-team offense and defense play the entire first half. Keep it locked here for notes, highlights and more throughout the game.
Here's the list of 49ers players who aren't expected to play tonight: Aaron Burbridge, Will Redmond, Jimmie Ward and Joshua Garnett.
The captains are Brandon Fusco, Kyle Nelson and Earl Mitchell.
The first takeaway is that we might see DeForest Buckner and Aaron Lynch. They aren't on the list, but that doesn't necessarily mean they will play. Both appear to be recovered from their ankle injuries and are available against Minnesota.
Also of note, Jaquiski Tartt, not Lorenzo Jerome, is slated to start in palce of Ward at free safety. That will be something to monitor during the game.
For the third straight game, the 49ers deferred to the second half and started the game on defense.
Reuben Foster dropped Dalvin Cook for a loss of five yards on the first play from scrimmage. Sam Bradford threw a quick pass to the right and Foster sniffed it out. Bradford fumbled the next snap which led to a sack by DeForest Buckner and an eventual three-and-out to open the game.
Brian Hoyer's first two passes went to Pierre Garçon for 10 and 16 yards, respectively.
The quarterback followed with a 46-yard touchdown on a deep ball to Marquise Goodwin to put the 49ers up 7-0. (10:30)
The score came on a play-action pass. Hoyer had all day to throw and Goodwin blew past the Vikings secondary.
San Francisco's pass-rush has been impressive early. Arik Armstead got one sack and Elvis Dumervil followed up with another on third down to force another punt. The 49ers have had pressure on almost every dropback.
Joe Staley was the first starter to exit the game, and John Theus entered at left tackle. It was announced that Staley has a knee injury and will not return. It doesn't appear to be serious.
Hoyer completed a third-down pass to Carlos Hyde for a gain of 15 yards. Matt Breida then came in to spell Hyde. The 49ers continued to churn out yards. A 14-yard pass to Garçon was followed by a 16-yard completion to Kyle Juszczyk. The play-action, rollout to the left and throw to Juszczyk is going to be a bread and butter play for the 49ers in 2017.
The 49ers opened the second quarter facing 3rd-and-4 from the Vikings 24-yard line.
Hoyer found Hyde out of the backfield for a 24-yard touchdown to put the 49ers up 14-0. (14:55)
Hoyer is now 9-for-9 passing for 152 yards, two touchdowns and a perfect quarterback rating of 158.3. Hyde is up to three receptions for 45 yards and a touchdown.
Eric Reid's tackle for loss on third down helped the 49ers defense force another three-and-out.
Hyde churned out a 7-yard run, but the 49ers were still forced to punt for the first time. Hoyer's third-down pass to Vance McDonald fell incomplete.
San Francisco's defense remained stout. The Vikings got a pair of first downs, but that's all. NaVorro Bowman sniffed out an end around to Adam Thielen for a loss of a yard. Then Rashard Robinson broke up a deep pass down the right sideline intended for Stefon Diggs. The 49ers caught a break when Diggs dropped a third-down pass that would have moved the chains.
Garçon caught two more passes and is up to 61 yards on five receptions. Hoyer and Goodwin nearly connected on another deep ball down the right sideline, but Trae Waynes broke it up at the last second. San Francisco punted for the second straight series.
A 14-yard pass from Bradford to Treadwell got the Vikings going, but the 49ers were aided again by another drop from Diggs. Reid had an emphatic stop on third down to stop Thielen short of the sticks and forced another Vikings punt.
The 49ers got an opportunity at a two-minute drill but went three-and-out. Eric Kendricks sacked Hoyer on third down.
Minnesota ran out of time during their final drive of the half. Bradford found Thielen for 28 yards to the 49ers 6-yard line as time expired. San Francisco took a 14-0 lead into the halftime locker room.
C.J. Beathard took over at quarterback to begin the second half. Three straight carries to Breida gained nine yards, and the 49ers punted it away.
Vikings backup running back Jerrick McKinnon gained 17 yards on one run. The drive stopped on third down when Keith Reaser nearly intercepted Case Keenum. Brock Coyle got injured on the third-down play. The linebacker got tended to by the medical staff before walking off under his own power.
Vikings kicker Marshall Koehn got Minnesota on the board with a 58-yard field goal to make it 14-3, San Francisco. (10:59)
Beathard's next pass bounced off the hands of Louis Murphy and was intercepted by Antone Exum Jr. Ronald Blair III got into the backfield for a tackle for loss as the 49ers defense held the Vikings to a field-goal attempt. Koehn was no good from 47-yards out to keep it 14-3, 49ers.
San Francisco covered 26 yards over their next eight plays. Breida did most of the work, and Murphy caught a 13-yard pass.
Nick Rose drilled a 55-yard field goal to put the 49ers up 17-3. (5:32)
The Vikings answered with their first touchdown drive. Minnesota was aided by a long pass interference penalty on Ahkello Witherspoon. It was a methodical drive downfield.
Keenum capped the drive with a 9-yard touchdown pass to Rodney Adams to make it 17-10, 49ers. (1:43)
The 49ers offense continued to go backwards. A personal foul set up 3rd-and-22 from the 49ers own 13-yard line.
That's when Beathard found Raheem Mostert on a short screen pass that Mostert took the distance for an 87-yard touchdown. (0:49)
Mostert has had a fantastic preseason. He showed well against the Kansas City Chiefs and displayed his wheels once again on that long touchdown.
Minnesota answered right back as McKinnon ran back a 108-yard kickoff return touchdown. (0:37)
Trent Taylor made the catch of the game on a third-down throw from Beathard to gain 18 yards. Taylor was popped at the end of the play but managed to hang on. Beathard then found Mostert again for a gain of 17 yards. Mostert followed with an 18-yard run.