In the first game of the season against Akron, Barkley had 14 rushes for 172 yards, two touchdowns, and a long run of 80 yards. He also recorded 54 receiving yards on two catches. For his efforts, Barkley was named co-Big Ten Offensive Player of the Week.
In the 2017 Big Ten opener, the Nittany Lions visited the Iowa Hawkeyes. In the dramatic 21–19 win, Barkley had a total of 358 all-purpose yards. He also set a program record for most yards in a single game. Barkley finished the game with 211 rushing yards and a touchdown, 94 receiving yards, and 53 kick return yards. For his efforts, Barkley was again named Big Ten Offensive Player of the Week.
In the first Big Ten home game of his junior campaign against the Indiana Hoosiers, Barkley carried the ball 20 times for only 56 yards, an underwhelming rushing day for him. Despite this, he still had a major impact on the game, returning the opening kickoff 97 yards for a touchdown, adding 51 yards on 4 catches, and even throwing a 16-yard pass to DaeSean Hamilton late in the fourth quarter to cap off a 45–14 win. Barkley became the first player in Big Ten history to score a return and passing touchdown in the same game. For his efforts, Barkley was named Big Ten Special Teams Player of the Week. One month later against #6 Ohio State, Barkley again returned the opening kickoff back 97 yards for a touchdown but was limited for the rest of the game to 44 yards rushing on 21 carries, 36 of which came on a TD run in the second quarter. In his final collegiate game, Barkley rushed for 137 yards and 2 touchdowns, one of them a 92-yard effort to put Penn State up 28-7 over the #11 Washington Huskies in the 2017 Fiesta Bowl, which Penn State would go on to win 35-28. On December 31, 2017, about 24 hours after the team’s Fiesta Bowl victory, Barkley declared his intentions to enter the NFL draft.