Hannibal is a city along the Mississippi River in Marion and Ralls counties in the U.S. state of Missouri. According to the 2020 U.S. Census, the population was 17,312, making it the largest city in Marion County. The bulk of the city is in Marion County, with a tiny sliver in the south extending into Ralls County.
Developed for river traffic, today the city is tied to vehicle traffic, intersected by Interstate 72 and U.S. Routes 24, 36, and 61. It is across the river from East Hannibal, Illinois. Hannibal is approximately 100 miles northwest of St. Louis, 210 miles east-northeast of Kansas City and 194 miles miles east of Saint Joseph, and approximately 100 miles west of Springfield, Illinois.
Wikipedia https://en.wikipedia.org/wiki/Hannibal,_Missouri
Coordinates 39°42'29.699" N -91°21'31.469" E