Both players were on top of their games in the first set as neither gave anything away on serve, forcing a tie-breaker. However, the Swiss upped the ante and cruised to a 7-0 victory to take the first set.
The second set followed the same pattern as the first as Isner's serve kept him in the match against the fluid groundstrokes of the world number two as another tie-breaker was needed to settle the contest.
However, the American proved to be more resilient this time around as he fended off the best attempts of Federer to find the breakthrough. The 34-year-old's quality finally told when he managed to earn a set point and seized the initiative to claim the second set.
In the third set, Federer began to apply pressure to the 13th seed's serve and carved out three break points, but Isner managed to find his rhythm to secure the vital hold.
Federer continued to exert stress on the American's serve and he carved out three further break points. The pressure this time proved to be too great on the 13th seed as he put his backhand wide of the line to hand the Swiss a place in the last eight.
The world number two will play Richard Gasquet in the quarter-finals of the competition.