McHenry County, Illinois
County seat: Woodstock · Population 317,751 (2025) · 603 sq mi
McHenry County is the 6th most populous of Illinois's 102 counties, with 317,751 people (2025 estimate). Its county seat is Woodstock. It is part of the Northeast region, one of the 10 Illinois economic development regions (DCEO). The map shows its 31 cities and towns and the 7 neighboring counties.

McHenry County facts
- County seat
- Woodstock
- Population (2025 estimate)
- 317,751 +2.4% since 2020
- Land area
- 603 sq mi 34th largest of 102
- Water area
- 8 sq mi
- Population density
- 527 per sq mi
- Established
- 1836
- Named after
- William McHenry American politician (1771-1835)
- Largest city
- Crystal Lake 42,288
- Median household income
- $104,802
- Cities and towns
- 31 plus 13 CDPs
- ZIP codes
- 24
- Time zone
- Central
- FIPS code
- 17111
Cities and towns in McHenry County
McHenry County has 31 incorporated cities, towns and villages. Populations count the people living inside McHenry County; cities that cross a county line also list the other counties.
| Name | Type | Population 2025 | Also in |
|---|---|---|---|
| Crystal Lake | City | 42,288 | |
| McHenry | City | 29,217 | |
| Lake in the Hills | Village | 28,590 | |
| Woodstock (county seat) | City | 25,740 | |
| Huntley | Village | 23,303 | Kane County |
| Algonquin | Village | 22,325 | Kane County |
| Cary | Village | 17,932 | |
| Harvard | City | 9,504 | |
| Marengo | City | 7,737 | |
| Johnsburg | Village | 6,445 | |
| Wonder Lake | Village | 5,593 | |
| Spring Grove | Village | 5,526 | |
| Island Lake | Village | 4,683 | Lake County |
| Fox River Grove | Village | 4,376 | Lake County |
| Lakewood | Village | 4,293 | |
| Lakemoor | Village | 2,564 | Lake County |
| Richmond | Village | 2,114 | |
| Oakwood Hills | Village | 2,046 | |
| Prairie Grove | Village | 1,939 | |
| Hebron | Village | 1,392 | |
| Barrington Hills | Village | 1,252 | Cook, Kane and Lake counties |
| Bull Valley | Village | 1,131 | |
| Port Barrington | Village | 1,053 | Lake County |
| McCullom Lake | Village | 962 | |
| Ringwood | Village | 830 | |
| Union | Village | 684 | |
| Fox Lake | Village | 640 | Lake County |
| Holiday Hills | Village | 606 | |
| Trout Valley | Village | 510 | |
| Greenwood | Village | 314 | |
| Hampshire | Village | 0 | Kane County |
Unincorporated communities (CDPs)
Census-designated places are communities without their own city government; the county provides their services.
| Community | Population | Also in |
|---|---|---|
| Pistakee Highlands | 3,374 | |
| Lawrence | 358 | |
| Chemung | 239 | |
| Ridgefield | 221 | |
| Burtons Bridge | 134 | |
| Hartland | 105 | |
| Alden | 48 | |
| Solon Mills | 38 | |
| Big Foot Prairie | 0 | |
| Coral | 0 | |
| Franklinville | 0 | |
| Harmony | 0 | |
| Riley | 0 |
ZIP codes in McHenry County
24 ZIP codes reach into McHenry County. ZIP codes ignore county lines, so some also cover a neighboring county.
- 60010 also Cook, Lake and Kane counties
- 60012
- 60013 also Lake County
- 60014
- 60020 also Lake County
- 60021 also Lake County
- 60033 also Boone County
- 60034
- 60042 also Lake County
- 60050 also Lake County
- 60051 also Lake County
- 60071
- 60072
- 60081 also Lake County
- 60097
- 60098
- 60102 also Kane County
- 60135 also DeKalb and Boone counties
- 60140 also Kane and DeKalb counties
- 60142 also Kane County
- 60152 also DeKalb County
- 60156
- 60180
- 61038 also Boone County
Population of McHenry County, 2020–2025
McHenry County grew by 7,446 people (+2.4%) between April 2020 and July 2025: 2,313 more births than deaths and a net gain of 5,024 people from migration.
| Year (July 1) | Population |
|---|---|
| 2020 | 309,977 |
| 2021 | 311,702 |
| 2022 | 311,889 |
| 2023 | 313,421 |
| 2024 | 315,730 |
| 2025 | 317,751 |
Neighboring counties
- Lake County east · 719,339 people
- Boone County west · 53,568 people
- Walworth County, Wisconsin north · 106,127 people
- Kane County south · 525,757 people
- DeKalb County southwest · 101,835 people
- Kenosha County, Wisconsin northeast · 168,448 people
- Cook County southeast · 5,194,625 people
Printable McHenry County map
The PDF is a vector file with real text: it prints sharp on Letter paper and you can search it for a town. The PNG is 2400 pixels wide for slides and documents. Both are free to use with a credit to WhichCounty.
- PDF (Letter) (153 KB)
- PNG (2400 px) (100 KB)
Paste this code to embed the map on your site:
Sources
- Boundaries: U.S. Census Bureau, 2025 Cartographic Boundary Files (1:500,000).
- Population: Census Bureau county and city estimates, Vintage 2025. CDP populations: American Community Survey 2020–2024.
- Places and ZIP codes: Census Bureau 2026 Gazetteer and 2020 ZIP Code Tabulation Area relationship files.
- County seat, founding year and name origin: Wikidata (CC0), checked against state sources.
Back to the Illinois county map with all 102 counties. Found an error? Tell us.