Graham was a tall medium-fast right-arm bowler and an absolute tail-ender in terms of batting. Having played a few matches for Kent in each season from 1964, he took 104 first-class wickets in the 1967 season at an average of 13.90 to come third in the national bowling averages. Kent finished as runners-up in the County Championship and won the Gillette Cup, the county's most successful season for 39 years. Though little more than medium pace, Graham was able to use his height – 2.03 metres or 6 feet 8 inches – to produce the kind of bounce and lateral movement normally associated with faster bowlers.
In 1968, he was picked for the MCC match against Surrey at Lord's, an indication that he may have been in the England selectors' thoughts. But though he took five wickets for 54 runs in Surrey's second innings, he alone of the MCC team that match never played for England.
Graham was never again to reproduce the kind of form he displayed in 1967, but he remained a useful county performer for Kent for a further nine seasons, taking more than 70 wickets in 1968, 1969 and 1971. In 1969, he took eight Essex wickets for 20 runs in the match at Brentwood as the home side was dismissed for just 34. He also became a highly effective bowler in one-day cricket in the early 1970s. He remained with Kent until the 1977 season.
Graham was a No 11 batsman for all of his career. His highest score in first-class cricket was only 23 and in 123 one-day matches he only got into double figures once. His total of first-class wickets comfortably exceeded his total of first-class runs and he never made 70 runs in a season.