31 cities
| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Vernon | 1 | 72,588 | 71,295 | 0.53% | 2,026 | 36 | Township |
| Centralia | 2 | 13,677 | 14,311 | -0.59% | 390 | 35 | Township |
| Centralia | 3 | 11,608 | 12,144 | -0.76% | 1,416 | 8 | City |
| Salem | 4 | 8,669 | 9,085 | -0.6% | 245 | 35 | Township |
| Salem | 5 | 6,887 | 7,274 | -0.92% | 985 | 7 | City |
| Sandoval | 6 | 2,132 | 2,203 | -0.33% | 121 | 18 | Township |
| Odin | 7 | 1,506 | 1,579 | -0.66% | 84 | 18 | Township |
| Raccoon | 8 | 1,486 | 1,538 | -0.4% | 42 | 35 | Township |
| Stevenson | 9 | 1,129 | 1,180 | -0.53% | 31 | 37 | Township |
| Sandoval | 10 | 1,109 | 1,157 | -0.72% | 1,113 | 1 | Village |
| Kinmundy | 11 | 1,077 | 1,120 | -0.46% | 29 | 37 | Township |
| Iuka | 12 | 977 | 1,019 | -0.51% | 27 | 36 | Township |
| Tonti | 13 | 975 | 1,017 | -0.51% | 27 | 35 | Township |
| Salem | 14 | 924 | 943 | 0.11% | 26 | 36 | Township |
| Patoka | 15 | 898 | 938 | -0.55% | 26 | 35 | Township |
| Odin | 16 | 886 | 936 | -0.89% | 883 | 1 | Village |
| Haines | 17 | 836 | 867 | -0.36% | 23 | 36 | Township |
| Alma | 18 | 752 | 784 | -0.53% | 20 | 37 | Township |
| Kinmundy | 19 | 701 | 731 | -0.71% | 585 | 1 | City |
| Patoka | 20 | 499 | 526 | -0.8% | 448 | 1 | Village |
| Iuka | 21 | 481 | 507 | -0.82% | 656 | 1 | Village |
| Romine | 22 | 475 | 493 | -0.42% | 13 | 36 | Township |
| Omega | 23 | 422 | 447 | -0.94% | 12 | 35 | Township |
| Carrigan | 24 | 348 | 364 | -0.57% | 10 | 35 | Township |
| Foster | 25 | 340 | 362 | -1.16% | 10 | 36 | Township |
| Salem | 26 | 339 | 340 | 0.3% | 10 | 35 | Township |
| Meacham | 27 | 332 | 350 | -0.6% | 9 | 37 | Township |
| Alma | 28 | 301 | 313 | -0.66% | 266 | 1 | Village |
| Kell | 29 | 168 | 174 | -0.59% | 168 | 1 | Village |
| Vernon | 30 | 99 | 102 | 0% | 112 | 1 | Village |
| Walnut Hill | 31 | 91 | 96 | -1.09% | 239 | 0 | Village |
Vernon is the largest city in Marion County, with a population of 72,588.
Walnut Hill is the smallest city in Marion County, with a population of 91.
There are 31 cities in Marion County, Illinois.