St. Charles is a city in Illinois in the United States. In the 2010 census, St. Charles had a population of 32,974. It is located on the Fox River between South Elgin, Illinois to the north and Geneva, Illinois to the south.