Garvin is a town in McCurtain County, Oklahoma, United States. The population was 256 at the 2010 census, compared to 143 at the 2000 census.