Foreston is a city in Mille Lacs County, Minnesota, United States. The population was 533 at the 2010 census.
A post office called Foreston has been in operation since 1889. The city was named for the forests near the original town site.
According to the United States Census Bureau, the city has a total area of 1.43 square miles (3.70 km2), of which 1.42 square miles (3.68 km2) is land and 0.01 square miles (0.03 km2) is water. Minnesota Highway 23 serves as a main route in the community.
As of the census of 2010, there were 533 people, 202 households, and 135 families residing in the city. The population density was 375.4 inhabitants per square mile (144.9/km2). There were 213 housing units at an average density of 150.0 per square mile (57.9/km2). The racial makeup of the city was 96.2% White, 1.1% Native American, 0.8% Asian, 0.2% from other races, and 1.7% from two or more races. Hispanic or Latino of any race were 1.7% of the population.
There were 202 households, of which 37.1% had children under the age of 18 living with them, 49.5% were married couples living together, 10.4% had a female householder with no husband present, 6.9% had a male householder with no wife present, and 33.2% were non-families.