Garoppolo was traded away by the Patriots midway into last season and quickly hit the ground running with the 49ers, posting a 5-0 mark as a starter before parlaying that success into a $137.5 million contract in February.
"I already knew that was going to happen; I called it before anybody," Marsh told SFGate.com of Garoppolo's fast start. "I knew because I was with the Patriots and he would shred our defense every day. He'd shred the first team every day, and it looked no different than when Tom (Brady) was on the field. He's a much better athlete than Tom; he's super disciplined and works hard. I'm very happy to have him as my quarterback."
Marsh saw his nine-game stint with the Patriots end when he was waived by club in November. The 25-year-old joined the 49ers on Nov. 22, approximately three weeks after San Francisco acquired Garoppolo from New England for a 2018 second-round draft pick.
Garoppolo made his first start for the 49ers in a Dec. 3 game against the Chicago Bears. The 49ers had a 1-10 record at the time, but they won their final five games with Garoppolo at the helm.
In his six games for San Francisco, including one in which he did not start, Garoppolo completed 67.4 percent of his passes for 1,560 yards, seven touchdowns and five interceptions.
Garoppolo also won his two games he started for the Patriots in 2016, when Brady was serving his four-game suspension for his part in Deflategate. Garoppolo injured his right shoulder in the second game that season, and was replaced by Jacoby Brissett for the final two contests before Brady's return.
As for Marsh, he signed a two-year contract with the 49ers in February.
Marsh had two sacks in six games with the club, which tied for third on a team that ranked 26th in the NFL in sacks with 30. He also forced two fumbles.
Marsh was a fourth-round draft pick of the Seattle Seahawks in 2014. He has six sacks in his four seasons in the NFL.