During the American Civil War he served in the Union Army. Following the war, he returned to Washington, Iowa. He served as a member of the State House of Representatives 1865-1867, in the State Senate, and as an associate justice of the Supreme Court of the Territory of Dakota. He was elected as a Delegate and served as a Republican from March 4, 1879-March 3, 1881. He was not a candidate for reelection in 1880.
Bennett moved to Deadwood, South Dakota, where he practiced law, then was elected judge of the probate court of Lawrence County and served three terms. He died at Hot Springs, Fall River County, South Dakota. He was intered in Mount Moriah Cemetery, in Deadwood.