Croft was born on September 7, 1922 in Sandbanks, Poole, Dorset, England. He studied at the Rugby School and at Royal Military College, Sandhurst. Croft was married to Ann Callender from 1952 until his death in 2011. They had seven children. Croft died on September 27, 2011 in his home in Tavira, Algarve, Portugal from natural causes, aged 89.