After leaving Repton School, Holmes enlisted as a war sub in the war effort with the Rifle Brigade in 1943.[1] In April 1944, he gained the temporary rank of Lieutenant,[2] while following the war he was granted the full rank of 2nd Lieutenant in March 1946, with seniority back to 7 April 1945.[3] In October 1946, Holmes was granted the rank of Lieutenant.[4] Holmes later made his first-class debut for the Free Foresters against Oxford University in 1949.[5] The following season he made his first-class debut for Sussex against Oxford University. The presence of Jim Parks in the Sussex squad limited Holmes to just one further first-class appearance, in 1951 against Oxford University.[5] All three of his first-class appearances came at Oxford University's University Parks. He scored 41 runs in his three innings, which came at an average of 10.25, with a high score of 24. Behind the stumps he took 6 catches and made a single stumping.[6]

In May 1951, Holmes gained the rank of Captain.[7] He retired from service on 16 August 1954, upon which he was granted the honorary rank of Major.[8] He died in an avalanche at Breuil-Cervinia in Italy on 3 February 1980,[9] alongside three other British tourists.[10] His father, Jack, also played first-class cricket for Sussex.