Troy is a town in Troy Township, Perry County, Indiana, along the Ohio River near the mouth of the Anderson River. The population was 385 at the 2010 census.