Asheville Regional Airport: Take Asheville Rides Transit (ART) Route 170 to the ART Station downtown: about 32–35 minutes, $1 one way. It is the cheap, sensible option only if its sparse schedule matches your flight; otherwise use a taxi or rideshare, typically 20–30 minutes and roughly $50 to downtown. Do not pay for a private “airport transfer” unless you need a car seat or have a group.
Charlotte Douglas International Airport: Rent a car and drive I-85/I-26: roughly 2 hours without bad traffic, and Asheville is one of the rare city breaks where having the car will be useful. Budget roughly $60–120 a day before fuel for a rental, depending heavily on dates. There is no rail or frequent, compelling public-transport transfer to Asheville; a one-way rideshare is usually poor value.
Greenville-Spartanburg International Airport: A rental car is the practical transfer: about 1½ hours to Asheville. It can be cheaper to fly here than AVL, but only if the fare saving covers a rental-car day and fuel; there is no useful direct rail link.
McGhee Tyson Airport, Knoxville: Rent a car for the approximately 2-hour drive. Consider it only when the airfare is markedly better than AVL or CLT: the mountain driving and car cost erase modest savings.
Greenville Amtrak station, South Carolina: This is one of the closest rail options, but Asheville has no passenger-rail station. Rent a car for the onward drive, roughly 1¼–1½ hours; do not build an itinerary around an assumed train-to-Asheville connection.
Spartanburg Amtrak station, South Carolina: Also a workable rail gateway only with a prearranged car rental: roughly 1–1¼ hours by road to Asheville. There is no direct Amtrak service into Asheville.