Barnhill was born in Halifax County, North Carolina on December 5, 1887, and attended the University of North Carolina Law School.
He was a Nash County judge and a state superior court judge before Governor Clyde R. Hoey appointed him to the state Supreme Court on July 1, 1937.
As a superior court judge, Barnhill presided over the murder trial that followed the Loray Mill Strike.
[2][3][4] He was subsequently elected to the Supreme Court in 1938 and re-elected in 1946.
Barnhill was appointed Chief Justice by Governor William B. Umstead on February 1, 1954, and he was elected to the post on November 2, 1954.