Hartshorne is a city in Pittsburg County, Oklahoma, United States. It is the third largest city in the county. The population was 1,947 at the time of the 2020 United States census.