Max Hall threw for 346 yards and three touchdowns, and ran for another score to lead No. 18 Brigham Young to the 500th victory in school history, 38-28 over San Diego State on Saturday.

BYU (6-1, 3-0 Mountain West Conference) beat SDSU (2-4, 0-2) for the eighth time in the last nine games.

SDSU's Ryan Lindley also threw three touchdown passes. SDSU kept pace with BYU into the third quarter, tying it at 21 before the Cougars' massive offensive line wore down the Aztecs, allowing Hall to throw two touchdown passes in less than four minutes.

Running an effective no-huddle offense, Hall was 27 of 39 for his fifth 300-yard game of the season. Lindley was 21 of 33 for 298 yards.

Lindley threw a 36-yard touchdown pass to DeMarco Sampson with 8:23 left in the third quarter to tie it at 21.

Three plays into the ensuing drive, Hall extricated the Cougars from a third-and-19 on the BYU 13 when he threw a 25-yard pass to JJ DiLuigi. Hall finished the drive with a 19-yard TD pass to tight end Andrew George for a 28-21 lead.

After SDSU punted, Hall opened the ensuing drive with a 40-yarder to Luke Ashworth. With his line giving him plenty of time to scramble around, he ended it by throwing a 9-yarder to tight end Dennis Pitta, who made a nice diving catch in the right corner of the end zone before tumbling out of bounds for a 35-21 lead one play into the fourth quarter.

BYU's offensive line averages 321 pounds compared to 250 pounds for SDSU's defensive line.

Hall gave BYU a 21-14 halftime lead by scoring on a 1-yard keeper as time ran out.

Lindley's third TD pass, a 6-yarder to Alston Umuolo to pull SDSU within seven with 8:17 to go. BYU's Mitch Payne kicked a 44-yard field goal with 2:21 to play.

BYU used its last timeout with 32 seconds before halftime, and Hall then completed a 6-yard pass to Dennis Pitta for a first-and-goal on the 1. Hall tried to score on a keeper but was stuffed for no gain. With the clock running down, the Cougars quickly lined up, Hall took the snap and ran untouched for a 21-14 lead.

With the score tied at 14, BYU free safety Scott Johnson had two big plays to keep the Aztecs from taking the lead for the second time. Lindley completed a 41-yard pass to Vincent Brown, who split two defenders and was headed for the end zone when Johnson made a diving swipe that tripped him up at the 12. Three plays later, Johnson dove in front of Roberto Wallace for an interception just inside the end zone.

After Harvey Unga scored on a 1-yard run on BYU's first drive of the game, SDSU scored on its next two drives to take a 14-7 lead. Lindley threw a 7-yard TD pass to Sampson and Brandon Sullivan scored on a 1-yard run.

BYU came right back and tied it on Hall's 3-yard pass to running back Bryan Kariya.