| City | Rank | 2026 Pop. ↓ | 2020 Pop. | Annual Change | Density (/mi²) | Area (mi²) | Type |
|---|---|---|---|---|---|---|---|
| Marion | 1 | 17,194 | 16,836 | 0.27% | 1,194 | 14 | City |
| Herrin | 2 | 12,246 | 12,335 | -0.18% | 1,266 | 10 | City |
| Carterville | 3 | 5,831 | 5,868 | -0.14% | 1,100 | 5 | City |
| Johnston City | 4 | 3,295 | 3,379 | -0.54% | 1,557 | 2 | City |
| Cambria | 5 | 1,857 | 1,541 | 3.4% | 1,312 | 1 | Village |
| Energy | 6 | 956 | 973 | -0.42% | 800 | 1 | Village |
| Hurst | 7 | 749 | 759 | -0.27% | 844 | 1 | City |
| Pittsburg | 8 | 559 | 568 | -0.36% | 271 | 2 | Village |
| Creal Springs | 9 | 488 | 501 | -0.61% | 475 | 1 | City |
| Freeman Spur | 10 | 270 | 280 | -0.74% | 677 | 0 | Village |
| Spillertown | 11 | 187 | 191 | -0.53% | 352 | 1 | Village |
| Colp | 12 | 174 | 178 | -0.57% | 1,299 | 0 | Village |
Marion is the largest city in Williamson County, with a population of 17,194.
Colp is the smallest city in Williamson County, with a population of 174.
There are 12 cities in Williamson County, Illinois.