Marion County is a county in the U.S. state of Iowa. As of the 2020 census, the population was 33,414. The county seat is Knoxville. It is named for Francis Marion, a brigadier general from South Carolina in the American Revolutionary War.