Charles Bunyan joue comme gardien de but au Old Horns et au Spital Olympic, avant de rejoindre Chesterfield FC en 1886. Puis il est passé professionnel au Hyde FC, un an plus tard. Il est le portier de Hyde, lorsque le club prend une correction 26-0 à Preston North End en FA Cup en octobre 1887. Ce score reste un record dans le football anglais.
De retour en Belgique la même année, il s'occupe des joueurs du Standard de Liège, et après un bref retour avec l'équipe de Belgique, sa carrière est interrompue par la Première Guerre mondiale.
Il revient en Belgique, après la guerre où il décède en 1922.