Winchester is easily accessible by car: it is right on Interstate 81, at exit 315. If you're coming from the South, it is about 3 hours north of Roanoke, less than 5 from Greensboro; from the North, it's about 3 hours from Pittsburgh. Nearby is Washington, DC, which is 75 miles away and takes about an hour-and-a-half from the monuments in DC. The easiest way from DC is to take I-66 West to I-81 North, then about 10 minutes to exit 315 (there are several exits for Winchester, but #315 takes you into downtown and the historic district). 

 As for airports, Dulles is the closest, less than an hour drive away. There are various shuttle services, but I highly recommend simply renting a car. From Dulles: take Hwy 267 West/Dulles Toll Road. Follow that for about 10 minutes, then take Hwy 7 West straight into Winchester.  If you're coming from Reagan National, it's a little over an hour drive away: take the George Washington Parkway south to the Beltway/I-495 North. Then take I-66 West and follow the above directions. 

If you fly into BWI Baltimore, it's not too far away (I fly in and out of there from time to time, since Southwest's biggest hub is Baltimore!). It's a 90-minute drive: the best way to avoid traffic is take I-195 (the main route out of the airport) to Hwy 295 South (the B-W Parkway) to Rte 100 West (only a couple of exits away). Follow until it ends and take Hwy 29 North; then get on I-70 West to Frederick, MD. From there, take Hwy 340 South -- this is a great route, since it takes you across two bridges at Harper's Ferry (and happens to be the quickest, most direct route to Winchester). Once through Harper's Ferry, you come into Charles Town (not to be confused with Charleston, the more southern capital of WV). Watch for the signs to "exit" for Hwy 340 South; yes, it's the same route, but you have to simply exit to continue on 340. About 15 minutes, you come to Rte 7 West, straight into Winchester. Voila.