Médaillé d'argent du 3 000 m steeple lors des Jeux de l'Empire britannique et du Commonwealth de 1966, derrière le Néo-zélandais Peter Welsh, il se classe quatrième des Jeux olympiques de 1968, à 2/100 de seconde seulement de l'Américain George Young, médaillé de bronze. Le , à Berlin, Kerry O'Brien établit un nouveau record du monde du 3 000 m steeple en 8 min 22 s 0, améliorant de 2/100 de seconde l'ancienne meilleure marque mondiale détenue depuis 1969 par le Soviétique Vladimir Dudin.