There are 4 ways to get from Colonial Williamsburg to Hershey by bus (Flixbus, Greyhound), train, bus, car, or train (Amtrak)
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus
best- Take the bus from Williamsburg Bus Stop to Washington Union Stationbus FlixBus 2605
- Take the bus from Washington Union Station to Harrisburg Bus Stationbus Greyhound US0430
8h 51m$47–75Train, bus
- Take the train from Williamsburg Amtrak Station to Washington Union Stationtrain Northeast Regional
- Take the bus from Washington Union Station to Harrisburg Bus Stationbus Greyhound US0430
10h 18m$112–178Drive 274.7 mi
- Drive from Colonial Williamsburg to Hersheycar 274.7 mi
5h 5m$47–68Train (Amtrak)
- Take the train from Williamsburg Amtrak Station to Washington Union Stationtrain
- Take the train from Washington Union Station to 30th Street Stationtrain
- Take the train from 30th Street Station to Harrisburgtrain
10h 30m$216–350
Colonial Williamsburg to Hershey by bus
Comparing Your Travel Options
The cheapest way to get from Colonial Williamsburg to Hershey is to bus which costs $45 - $75 and takes 8h 51m.
The fastest way to get from Colonial Williamsburg to Hershey is to drive which takes 5h 5m and costs $45 - $70.
No, there is no direct bus from Colonial Williamsburg to Hershey. However, there are services departing from Williamsburg Bus Stop and arriving at Chocolate Ave & Cocoa Ave via Washington Union Station and Harrisburg Transportation Center. The journey, including transfers, takes approximately 8h 51m.
No, there is no direct train from Colonial Williamsburg station to Hershey. However, there are services departing from Williamsburg Amtrak Station and arriving at Harrisburg via Washington Union Station and 30th Street Station. The journey, including transfers, takes approximately 10h 30m.
The distance between Colonial Williamsburg and Hershey is 288 miles. The road distance is 276.3 miles.
The best way to get from Colonial Williamsburg to Hershey without a car is to bus which takes 8h 51m and costs $45 - $75.
It takes approximately 8h 51m to get from Colonial Williamsburg to Hershey, including transfers.
Colonial Williamsburg to Hershey bus services, operated by Flixbus USA, depart from Williamsburg Bus Stop station.
Colonial Williamsburg to Hershey train services, operated by Amtrak, depart from Williamsburg Amtrak Station.
The best way to get from Colonial Williamsburg to Hershey is to bus which takes 8h 51m and costs $45 - $75. Alternatively, you can train, which costs $210 - $350 and takes 10h 30m.
What companies run services between Colonial Williamsburg, VA, USA and Hershey, PA, USA?
You can take a bus from Williamsburg Bus Stop to Chocolate Ave & Cocoa Ave via Washington Union Station, Harrisburg Bus Station, and Harrisburg Transportation Center in around 8h 51m. Alternatively, you can take a train from Williamsburg Amtrak Station to Chocolate Ave & Cocoa Ave via Washington Union Station, 30th Street Station, Harrisburg, and Harrisburg Transportation Center in around 10h 30m.
Rome2Rio's guide to Amtrak
Contact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Williamsburg Amtrak Station to Washington Union Station
- Ave. Duration
- 3h 54m
- Frequency
- Twice daily
- Estimated price
- $90–140
- Website
- Amtrak
Train from Williamsburg Amtrak Station to Washington Union Station
- Ave. Duration
- 3h 54m
- Frequency
- Twice daily
- Estimated price
- $90–140
- Website
- Amtrak
Train from Washington Union Station to 30th Street Station
- Ave. Duration
- 2h 10m
- Frequency
- Hourly
- Estimated price
- $70–120
- Website
- Amtrak
Train from 30th Street Station to Harrisburg
- Ave. Duration
- 1h 51m
- Frequency
- Every 2 hours
- Estimated price
- $55–90
- Website
- Amtrak
Rome2Rio's guide to Amtrak Acela
Contact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Washington Union Station to 30th Street Station
- Ave. Duration
- 1h 42m
- Frequency
- Hourly
- Estimated price
- $30–650
- Schedules at
- Amtrak Acela
- Website
- Amtrak
- Business Class
- $30–470
- First Class
- $150–650
- Phone
- +1 (855) 626-8585
- Website
- Flixbus USA
Bus from Williamsburg Bus Stop to Washington Union Station
- Ave. Duration
- 3h 35m
- Frequency
- Once daily
- Estimated price
- $25–40
- Schedules at
- Flixbus USA
Rome2Rio's guide to Greyhound USA
Contact Details
- Phone
- +1 214-849-8100
- [email protected]
- Website
- Greyhound
Bus from Washington Union Station to Harrisburg Bus Station
- Ave. Duration
- 2h 30m
- Frequency
- 4 times a week
- Estimated price
- $20–35
- Website
- Greyhound
Bus from Washington Union Station to Harrisburg Bus Station
- Ave. Duration
- 2h 30m
- Frequency
- 4 times a week
- Estimated price
- $20–35
- Website
- Greyhound
Want to know more about travelling around United States
Rome2Rio's Travel Guide series provide vital information for the global traveller. Filled with useful and timely travel information, the guides answer all the hard questions - such as 'How do I buy a ticket?', 'Should I book online before I travel? ', 'How much should I expect to pay?', 'Do the trains and buses have Wifi?' - to help you get the most out of your next trip.
Related travel guides
Travelling to the US: What do I need to know?
Read the travel guide
Need to know: Greyhound
Read the travel guide
Why you should take the train in the US
Read the travel guide
Booking & Getting There
Colonial Williamsburg to Hershey bus services, operated by Flixbus USA, arrive at Washington Union Station.
Colonial Williamsburg to Hershey train services, operated by Amtrak, arrive at Washington Union Station.
Yes, the driving distance between Colonial Williamsburg to Hershey is 276 miles. It takes approximately 5h 5m to drive from Colonial Williamsburg to Hershey.
There are 199+ hotels available in Hershey.






