1) Jimmy Garoppolo is a Franchise Quarterback


This is not an overreaction. On a short week on the road with multiple injuries and facing a very scrappy divisional opponent, Jimmy Garoppolo put the team on his back and won the game. It wasn't just the raw numbers, though they were great as he finished 28 for 37 with 317 yards and four touchdowns. What really made the difference in the game was Garoppolo's ability to convert on third down. His third-down passing ended at 12 for 14 for 159 yards and three touchdowns.

Look no further than the final drive for Jimmy G's ability to come up big in "crunch time". His 16-yard pass under duress to Emmanuel Sanders was probably the play of the night. If he doesn't make that play, the Cardinals get the ball back with plenty of time. Instead, the 49ers convert and they would get two more first downs to seal the win. On the last play, it appeared Garoppolo was going to run, but he smartly found tight end Ross Dwelley (George Kittle was on the sideline) to win the game.

Going into the game, Garoppolo led the league in third-down passing and tonight he added to that. He showed that he is worth every penny he got in that contract.

2) The 49ers Have Shown a lot of Growth


This game seemed like it could have been a letdown, especially early. The Cardinals score an opening touchdown, George Kittle hurts his knee and the 49ers punt after a few plays. After they took control of the game, the Cardinals hung around and they made the big play, an 88-yard touchdown from Kyler Murray to little-used Andy Isabella, which cut the lead to 28-25.

Divisional games are always challenging. Especially on the road. Especially on Thursday night on a short week. Especially when the team is banged up and in need of rest. These are the games the 49ers could not find a way to win in 2017 and 2018. That is no longer the case. This team can win games in multiple ways. The secondary can finish games. The pass rush can take over and close out games. The running game can chew up the clock and wear out defenses. Now there is no denying the franchise quarterback can close out games as well. And all while fighting through very difficult injuries.

This team will compete for the division title and it has a chance to compete for a first-round bye in the postseason. What a difference a year makes.

3) The Emmanuel Sanders Trade Is Bigger than We Thought


With all the adversity in tonight's game, make no mistake. The 49ers probably do not win this game without Emmanuel Sanders. Kittle was banged up. Marquise Goodwin was a healthy scratch likely due to more family tragedy. Dante Pettis hasn't progressed. Enter Sanders, who stepped up in a major way.

He finished with 7 catches for 112 yards and a touchdown. It was his third-down conversions that won the game, especially on the final drive.

Sanders makes this receiving group very dangerous and will make the young guys improve faster than they otherwise would have. Terrific move John Lynch!

4) Extra Points


- Kwon Alexander exited the game with a chest injury and will have an MRI. Hopefully, it is minor.

- Matt Breida, playing through an ankle injury, was the team's leading rusher with 78 yards for a 5.2 average on 12 carries.

- George Kittle survived a major scare and even came back into the game until late in the fourth. His presence definitely was important as he finished with 6 catches for 79 yards, including a gorgeous 30-yard touchdown.

- The defense totaled 3 sacks from Dre Greenlaw, DeForest Buckner, and Dee Ford.

- For the first time since the Browns game, the 49ers committed zero turnovers.

- Next up, the 49ers face the Seattle Seahawks at Levi's Stadium on Monday Night Football, November 11th. They will get Joe Staley, Ahkello Witherspoon, Mike McGlinchey, and Kyle Juszczyk back. Hopefully, Kwon Alexander will also be out there. Expect San Francisco to be up for the challenge.