Buffalo is a town in Harding County, South Dakota, United States. The population was 330 at the 2010 census. It is the county seat of Harding County. According to the United States Census Bureau, the town has a total area of 0.6 square miles (1.6km2), all of it land. Buffalo was established in 1909. It was named for the large herds of buffalo that once roamed the area.