There are 5 ways to get from San Bernardino to Imperial Beach by bus (Flixbus), train (Amtrak), car, or bus
Select an option below to see step-by-step directions and to compare ticket prices and travel times in Rome2Rio's travel planner.
Bus (Flixbus)
best- Take the bus from San Bernardino Downtown Transit Center to San Ysidro Bus Terminalbus FlixBus 2015 / ...
5h 2m$24–43Drive 116.8 mi
cheapest- Drive from San Bernardino to Imperial Beachcar 116.8 mi
2h 1m$22–31Train via Santa Ana
- Take the train from San Bernardino - Downtown to Santa Anatrain IE-OC Line
- Take the train from Santa Ana to San Diego Old Town Transportation Centertrain Pacific Surfliner
5h 25m$38–78Train
- Take the train from San Bernardino - Downtown to Oceansidetrain IE-OC Line
- Take the train from Oceanside to San Diegotrain Pacific Surfliner
5h 43m$27–50Bus via Cross Border Express, San Diego
- Take the bus from San Bernardino, CA to Cross Border Express, San Diegobus El Paso
10h 3m$61–108
San Bernardino to Imperial Beach by bus (Flixbus)
Questions & Answers
The cheapest way to get from San Bernardino to Imperial Beach is to drive which costs $21 - $35 and takes 2h 1m.
The fastest way to get from San Bernardino to Imperial Beach is to drive which takes 2h 1m and costs $21 - $35.
No, there is no direct bus from San Bernardino to Imperial Beach. However, there are services departing from San Bernardino Downtown Transit Center and arriving at Palm Av & 9th St via San Ysidro Transit Center and Iris Avenue Transit Center. The journey, including transfers, takes approximately 5h 2m.
No, there is no direct train from San Bernardino to Imperial Beach station. However, there are services departing from San Bernardino - Downtown and arriving at Palm Avenue Station via Santa Ana and Old Town Station. The journey, including transfers, takes approximately 5h 25m.
The distance between San Bernardino and Imperial Beach is 143 miles. The road distance is 117.5 miles.
The best way to get from San Bernardino to Imperial Beach without a car is to bus which takes 5h 2m and costs $24 - $45.
It takes approximately 5h 2m to get from San Bernardino to Imperial Beach, including transfers.
San Bernardino to Imperial Beach bus services, operated by Flixbus USA, depart from San Bernardino Downtown Transit Center station.
San Bernardino to Imperial Beach train services, operated by Metrolink Trains, depart from San Bernardino - Downtown station.
The best way to get from San Bernardino to Imperial Beach is to bus which takes 5h 2m and costs $24 - $45. Alternatively, you can train via Santa Ana, which costs $35 - $80 and takes 5h 25m.
What companies run services between San Bernardino, CA, USA and Imperial Beach, CA, USA?
Flixbus USA operates a bus from San Bernardino Downtown Transit Center to San Ysidro Bus Terminal 4 times a day. Tickets cost $20–35 and the journey takes 3h 55m. Alternatively, you can take a train from San Bernardino - Downtown to Palm Av & Emory St via Santa Ana, San Diego Old Town Transportation Center, Old Town Station, Palm Avenue Station, and Palm Av & Hollister St in around 5h 25m.
- Phone
- (800) 371-LINK (5465)
- Website
- Metrolink Trains
Train from San Bernardino - Downtown to Santa Ana
- Ave. Duration
- 1h 20m
- Frequency
- 3 times a day
- Estimated price
- $9–13
- Website
- Metrolink Trains
Train from San Bernardino - Downtown to Oceanside
- Ave. Duration
- 2h 39m
- Frequency
- 4 times a week
- Estimated price
- $13–18
- Website
- Metrolink Trains
Rome2Rio's guide to Amtrak
Contact DetailsContact Details
- Phone
- +1 800-872-7245
- Website
- Amtrak
Train from Santa Ana to San Diego Old Town Transportation Center
- Ave. Duration
- 1h 51m
- Frequency
- Hourly
- Estimated price
- $27–60
- Website
- Amtrak
Train from Oceanside to San Diego
- Ave. Duration
- 59 min
- Frequency
- Hourly
- Estimated price
- $12–27
- Website
- Amtrak
- Phone
- +1 (855) 626-8585
- Website
- Flixbus USA
Bus from San Bernardino Downtown Transit Center to San Ysidro Bus Terminal
- Ave. Duration
- 3h 55m
- Frequency
- 4 times a day
- Estimated price
- $20–35
- Schedules at
- Flixbus USA
- [email protected]
- Website
- CBX Cross Border Express
Bus from San Bernardino, CA to Cross Border Express, San Diego
- Ave. Duration
- 8h 30m
- Frequency
- Twice daily
- Estimated price
- $35–55
- Schedules at
- CBX Cross Border Express
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
Why you should take the train in the US
Read the travel guide
More Questions & Answers
San Bernardino to Imperial Beach bus services, operated by Flixbus USA, arrive at San Ysidro Bus Terminal station.
San Bernardino to Imperial Beach train services, operated by Metrolink Trains, arrive at Santa Ana station.
Yes, the driving distance between San Bernardino to Imperial Beach is 117 miles. It takes approximately 2h 1m to drive from San Bernardino to Imperial Beach.
There are 1518+ hotels available in Imperial Beach.









