Jimmy Garoppolo threw for four touchdown passes, including two to Brandon Aiyuk and George Kittle, and the San Francisco 49ers earned their fourth straight victory by beating the Arizona Cardinals 38-10 on Monday in Mexico City.

It was the fifth regular-season NFL game in Mexico City and the first since 2019. The Cardinals technically played at home, but the raucous, festive crowd heavily favored the 49ers, shouting especially loudly when Kittle and Deebo Samuel they each scored touchdowns on 39-yard passes.

San Francisco (6-4) has won five of its last seven meetings and is tied with the Seahawks for atop the NFC West. Garoppolo had another efficient performance in which he completed 20 of 29 passes for 228 yards.

The duel remained close in the first two periods, but the 49ers widened the difference in the second half taking a 24-10 lead at the beginning of the third period. Samuel entered the field and rushed for 39 yards, weaving through the Cardinals’ defense on his way to the end zone.

The Cardinals (4-7) played their second straight game without Pro Bowl quarterback Kyle Murray, who has been dealing with a hamstring injury. Backup Colt McCoy is 3-1 as a starter the past two seasons — including last week’s win over the Rams — but he couldn’t recreate the magic in Mexico.

McCoy completed 24 of 34 passes for 218 yards and an interception. The 49ers hit him hard multiple times and he was sacked three times.

The grand Azteca Stadium—home to Mexico’s top soccer team—is at an altitude of more than 7,200 feet (2,100 meters), which is higher than both San Francisco and Phoenix. The 49ers opted to train at altitude this week in Colorado and the Cardinals opted to train at their home in Tempe, Arizona.

Categorized in: