Esko is an unincorporated community and census-designated place in Thomson Township, Carlton County, Minnesota, United States. As of the 2020 census, its population was 2,082. The community is between Cloquet and Duluth at the junction of Interstate 35 and County Road 1. Esko is 6 miles east of Cloquet and 16 miles southwest of Duluth.