Frank Soo est né à Buxton, Derbyshire. Fils d'un père chinois (Our Quong Soo ou Ah Kwong Soo) et d'une mère anglaise (Beatrice Whittam), il est le premier joueur d'origine asiatique jouant pour l'équipe d'Angleterre pendant la Seconde Guerre mondiale, mais les matchs joués en période de guerre ne sont pas considérés comme de véritables sélections en équipe d'Angleterre. Il connut entre 1942 et 1945 neuf sélections avec la sélection anglaise en temps de guerre, pour aucun but inscrit.
Joueur de Stoke City de 1933 à 1945, il disputa 143 matchs pour cinq buts inscrits. Cependant, du fait de l'interruption du championnat anglais du fait de la Seconde Guerre Mondiale, il joua dans différents clubs (Everton FC, Chelsea FC, Millwall FC, Brentford FC et Reading FC). Après la guerre, fut dans le club de Leicester City, bien qu'il y joua aucun match. De 1946 à 1949, il joua pour Luton Town FC, jouant 71 matchs pour quatre buts. Il finit sa carrière à Chelmsford City FC, pour trois saisons, soit 82 matchs disputés pour dix buts inscrits.
Il fit ensuite une carrière d'entraîneur essentiellement en Scandinavie (Suède, Norvège et Danemark), en Angleterre et en Italie. Il fut le sélectionneur national de la Norvège en 1952, et aussi pendant un court moment celui d'Israël, mais on n'en trouve aucune trace.