Marvin is a village in Union County, North Carolina, United States. The population was 5,579 at the 2010 census. It is a more rural suburb of Charlotte.