Marco Fu remporte son premier tournoi classé au Grand Prix de 2007 à Aberdeen, en Écosse. Il se défait du champion du monde en titre, John Higgins, puis de Gerard Greene pour se qualifier en finale où il retrouve l'Anglais Ronnie O'Sullivan, deux fois champion du monde à l'époque, qu'il bat par 9 manches à 6. Après le match, Fu décrira ce résultat comme la « meilleure performance de sa carrière ». L'année suivante, il est demi-finaliste au Masters mais est battu par Stephen Lee. C'est également en 2008 que Fu atteint la finale du championnat du Royaume-Uni, sa première finale majeure. Il est battu de justesse par Shaun Murphy, par 10 manches à 9, au terme d'une rencontre particulièrement décousue.