Richardson was born at Marylebone, London, the son of Arthur Walker Richardson, who played for Derbyshire between 1928 and 1936 and was club captain for five of those years, taking the Championship in 1936.
Richardson was educated at Winchester College and started his career at Derbyshire in the 1959 season, taking three wickets in his debut match against Worcestershire, and making his top score of 91 in his next match against Glamorgan.
Richardson was a right-handed batsman and played 107 innings in 69 first-class matches with an average of 15.86 and a top score of 91.
He played three innings in three one-day matches and made 39 runs.
He was a left-arm medium-fast bowler and took 147 first-class wickets with an average of 27.70 and a best performance of 8 for 54.