Behind three touchdown passes from quarterback Kurt Benkert, Virginia put the momentum on their side and avoided dropping its fourth straight season opener.
After leading by 14 at the half, the Cavaliers put the game away late in the fourth quarter as Benkert found running back Jordan Ellis for a 1-yard touchdown pass to seal Virginia's win. Benkert finished the day completing 27 of his 39 passes for 262 yards.
Ellis racked up 80 yards on the ground and two total touchdowns, and Doni Dowling caught six passes for 76 yards.
Virginia's defense held William & Mary to 240 total yards as the Tribe (0-1) finished the day with just 72 passing yards and were 1-for-11 on third down. The Cavaliers totaled 354 yards and converted on nine of their 18 third down attempts.
After each team traded punts on the first two possessions of the game, Virginia (1-0) kick started its offense. The Cavaliers used a 13-play, 80-yard drive that was capped off by an Ellis 1-yard touchdown run to take an early 7-0 lead.
Only one other score occurred in the first half as Benkert connected with wide receiver Andre Levrone for a 34-yard touchdown to put Virginia up 14-0 late in the second quarter. That score held up as the Cavaliers led 14-0 at the half.
Virginia outgained William & Mary 216-68 in the half as the Cavaliers held the Tribe to just 14 passing yards.
William & Mary quarterback Tommy McKee completed 6 of 12 passes for 63 yards and ran 15 times for 89 yards, including a 2-yard touchdown that pulled the Tribe within 21-10 with 6:50 remaining.