Farnes was born in Leytonstone, Essex, and was educated at the Royal Liberty School in Gidea Park. He made his first-class debut for Essex in 1930, aged only 19. He took 5-36 in his second county match against Kent. He studied at Pembroke College, Cambridge, playing cricket in the University side for three years while also continuing to play for Essex. After graduating, he became a teacher at Worksop College, which limited his opportunity to play for Essex.
Farnes was reduced to tears in 1932, playing against Yorkshire at Scarborough. Earlier that year, playing at Leyton, Yorkshire had beaten Essex by an innings and 313 runs. Farnes reinforced Essex for the return match. Bowling as fast as he could, he conceded 75 runs to Herbert Sutcliffe and Maurice Leyland in 4 overs, and Essex lost again by an innings and 8 runs.
In 1933, he took 41 wickets for Cambridge at a bowling average of 17.39 runs; in all, he took 113 wickets at an average of 18.38 that year. He was called up for the 1st Test against Australia in 1934, at Trent Bridge, taking 5-102 and 5-77, although England lost by 238 runs. He also played in the 2nd Test at Lord’s, but was then injured, missing the next two Tests and only playing again towards the end of the season.
After two further Tests on the tour to the West Indies in 1934/35, an injury to his knee prevented him from playing in 1935. The next season, playing for the Gentlemen against the Players, he took three quick wickets, bowling Gimblett, Hammond and Hardstaff, to leave the Players at 33-4. Although rain intervened, so the match was drawn, Gubby Allen selected him for the tour to Australia that winter, where he played in the 4th and 5th Tests. His 6-96 in the 5th Test at the MCG could not prevent Australia scoring 604 in their first innings, and so winning the match by an innings and 200 to take the series 3-2.
In 1938, Farnes bowled the Gentlemen to their second victory against the Players since 1918, taking 8-43 and 3-60, and he returned to the Test side for 4 Tests against Australia in 1938, and he toured South Africa that winter, opening the bowling in five Tests with Hedley Verity.
A tall man of 6’5″, and widely recognised for his fitness, he achieved considerable pace from a short run-up, and sharp lift from a good length. His height also enabled him to take many sharp catches close to the stumps. He was a confirmed tail-ender as a batsman. He achieved his highest first-class score of 97 not out against Somerset at Taunton in 1936, putting on 149 for the tenth wicket and just missing out on his century.
He was a Wisden Cricketer of the Year in 1939, and published an autobiography, Tours and Tests in 1940. He joined the Royal Air Force Volunteer Reserve in the Second World War, and trained in Canada. He was a sergeant prior to being commissioned as a pilot officer on 1 September 1941. He died shortly after returning to England, when the plane that he was flying crashed near Chipping Warden in Oxfordshire during a night-flying exercise. He is buried at the Brookwood Military Cemetery in Surrey.
Farnes partner at the time of his death was a woman whose only daughter married the film critic Barry Norman.