Williams finished with 84 yards rushing on 14 carries while TreVeyon Henderson added 91 yards on 15 carries.
Ohio State beat Notre Dame for the fifth consecutive time and improved to 5-2 in the series.
FIRST HALF RECAP
Notre Dame used a big play and a long drive to forge a three-point halftime lead at Ohio State on Saturday night.
The fifth-ranked Fighting Irish struck first with a 33-yard field goal by Blake Grupe that was set up by a 54-yard catch-and-run pass play from Tyler Buchner to Lorenzo Styles Jr. on the first play from scrimmage.
Ohio State responded with a 31-yard touchdown pass from C.J. Stroud to Emeka Egbuka, who had a man near him but hauled in a rope from Stroud and scampered into the end zone.
The Fighting Irish answered with an 87-yard drive that included 10 plays and took 5:10 off the clock.
Audric Estime finished the drive by diving in from a yard out, capping a drive that included a pair of third down conversions.
Ohio State had a chance to tie the game with :40 seconds left in the second quarter, but Noah Ruggles’ 39-yard field goal went wide left.
Buchner completed his first eight passes and finished the half 8 for 10 for 128 yards.
Stroud was 11 for 17 for 99 yards while running backs Miyan Williams and TreVeyon Henderson combined for 56 yards on nine carries.