The Army Knights defeated the Navy Midshipmen 17-10 to capture the Commander-in-Chief's Trophy at Philadelphia's Lincoln Financial Field in the 119th Army-Navy game Saturday.
Army has won three straight contests against Navy after the Midshipmen won the previous 14 meetings in a row.
Overall, Navy holds a 60-52-7 lead in the all-time series.
The Knights improved to 10-2, marking the first time in program history they've won double-digit games two seasons in a row.
Meanwhile, Navy fell to 3-10, which is its worst record since it went 2-10 in 2002.
As expected, the running game ruled the day, as Army rushed for 222 yards as a team, led by quarterback Kelvin Hopkins Jr., who rushed for 64 yards and two touchdowns while completing four of nine pass attempts for 61 yards.
The Army defense also dominated by holding the Midshipmen to 208 total yards and 11 first downs. It forced four turnovers as well.
There weren't many fireworks to speak of throughout Saturday's game, but there was no shortage of pageantry during the pregame festivities.
President Donald Trump was present, and he tweeted about how honored he was to be involved:
As seen in the following tweet courtesy of NBC News' Kelly O'Donnell, Trump was also the honorary coin tosser prior to kickoff:
Also, when the two teams took the field, there was an awe-inspiring flyover that set the tone for one of the greatest rivalries in sports:
During the early going, it looked like Army was in line to run away with a blowout victory, as the Knights scored a touchdown on their first drive.
After junior running back Kell Walker exploded for a career-long run of 51 yards, Hopkins ran it in from 10 yards out to help put Army on top 7-0:
Later in the first quarter, defensive back Jaylon McClinton intercepted a tipped pass from Navy quarterback Zach Abey, which set the Knights up for another potential score:
After driving 51 yards, however, Army could not extend its lead, as kicker John Abercrombie missed a 33-yard field goal.
Army carried the 7-0 lead into halftime, and Navy was fortunate to be down just seven points given its lack of offensive success.
Abercrombie got a chance at redemption in the third quarter with another 33-yard field goal attempt, and the second time was a charm, as he put Army on top 10-0.
On the ensuing drive, Abey was intercepted for the second time, as defensive back Mike Reynolds picked off his wayward pass:
Peter Schmuck of the Baltimore Sun noted that Abey simply wasn't on his game Saturday:
The stats supported that notion, as Abey finished 0-of-5 passing with two interceptions to go along with zero rushing yards on six carries.
Abey struggled so badly that senior Garret Lewis replaced him in the fourth quarter with Navy trailing 10-0.
The move seemed to pay immediate dividends, as Lewis completed Navy's first pass of the day—a 34-yard screen to Keoni-Kordell Makekau—to convert a third down on his first drive.
Lewis made a costly mistake later in the drive, though, when he lost a fumble at the Army 3-yard line:
Army was unable to capitalize, as Navy forced a three-and-out and then finally got on the board shortly thereafter.
A 43-yard run by junior quarterback Malcolm Perry on a halfback draw set the stage for Lewis to dive into the end zone from one yard out and help cut the deficit to 10-7:
Navy got the ball back after forcing a punt and had a chance to drive for the tying or winning score, but Army linebacker Kenneth Brinson forced and recovered a fumble on fourth down when he sacked Abey, who replaced the injured Lewis for a play:
That set the Knights up at Navy's 22-yard line in the game's waning minutes.
Hopkins' second touchdown run of the day with 1:28 remaining then put the game out of reach and sealed Army's third straight win over Navy.
Although the Midshipmen did manage to make it a seven-point game with a field goal, they could not recover the onside kick, which resulted in an Army victory.
Following Saturday's big victory, Army will prepare for the Armed Forces Bowl against the Houston Cougars on Dec. 22. Army will have a chance to win 11 games in a season for the first time in program history.
On the other side, Navy did not qualify for a bowl, so the Midshipmen will enter the offseason and focus on bouncing back in 2019.