Diagonal is a city in Ringgold County, Iowa, United States. The population was 330 at the 2010 census.The community was named for the fact two railroads intersected diagonally near the town site.