Vancouver to Toronto Trains | Tickets & Schedule - CANADA TRAINS (2024)

Vancouver to Toronto Trains | Tickets & Schedule - CANADA TRAINS (1) Find your train and book train tickets with Rail.Ninja® - a global independent online reservation service agency for train tickets

`); }); if($('.train-search-block').hasClass('round-trip') && selectedDates.length === 1) { $('.date-wrapper').append(`

`); } } } }; let datePicker = $("#searchDate").flatpickr(flatpickrOptions); $('.date-wrapper .date').append(`${datePicker.formatDate(firstDate, "d")}${datePicker.formatDate(firstDate, "M")}`); const renderErrorMessage = () => { let messages = []; $('.search-error-message').remove(); Object.keys(errors).forEach(key => messages.push(errors[key])); $('.train-search-form').append(`

${errorsMessages.hasError} ${messages.join(', ')}

`); }; const removeErrorAndUpdate = ($element) => { $element.removeClass('error-validation'); delete errors[$element.attr('class')]; $('.search-error-message').remove(); if (Object.entries(errors).length !== 0) { renderErrorMessage(); } }; $('input[type=radio][name=form-mode]').change(function () { if (this.value === link.mode.basic) { if (datePicker.selectedDates.length === 2) { datePicker.selectedDates.pop(); } if (errors['search-date']) { removeErrorAndUpdate($('.search-date')); } datePicker.set('mode', 'single'); datePicker.set('showMonths', 1); datePicker.destroy(); flatpickrOptions.defaultDate = firstDate; datePicker = $("#searchDate").flatpickr(flatpickrOptions); $('.date-wrapper').html(''); $('.date-wrapper').append(`

${datePicker.formatDate(firstDate, "d")}${datePicker.formatDate(firstDate, "M")}

`); $('.train-search-block').removeClass('round-trip'); } else if (this.value === link.mode.roundtrip) { firstDate = datePicker.selectedDates[0]; datePicker.set('mode', 'range'); if ($(window).width() > 725) { datePicker.set('showMonths', 2); } if ($('.date-wrapper .date').length < 2) { datePicker.open(); $('.date-wrapper').append(`

`); } $('.train-search-block').addClass('round-trip'); } }); $('.search-date').click(function () { datePicker.open(); }); $('.passengers-value').click(function () { $('.passengers-dropdown').show(); }); const quantityMinus = $('.quantity-counter .counter-minus'); const quantityPlus = $('.quantity-counter .counter-plus'); let passengersCount = 1; const getChildrenAgeWrapper = (number) => { return `

Child ${number}

`; }; quantityMinus.click(function (e) { e.preventDefault(); const input = $(this).siblings('.counter-input'); const isAdultsQuantity = $(this).closest('.quantity').hasClass('quantity-adults'); let value = input.val(); let minValue = 0; if (isAdultsQuantity) { minValue = 1; } if (value > minValue && passengersCount > 1) { value--; passengersCount--; input.val(value); } if (isAdultsQuantity) { $('.passengers-value .adults').html('×' + value); } else { const childrenLabel = $('.passengers-value .children'); if (value === 0 && childrenLabel.length !== 0) { childrenLabel.remove(); } else { childrenLabel.html('×' + value); } $('.children-age-wrapper').last().remove(); } }); quantityPlus.click(function (e) { e.preventDefault(); const input = $(this).siblings('.counter-input'); const isAdultsQuantity = $(this).closest('.quantity').hasClass('quantity-adults'); let value = input.val(); if (passengersCount < 9) { value++; passengersCount++; input.val(value); if (isAdultsQuantity) { $('.passengers-value .adults').html('×' + value); } else { if ($('.passengers-value .children').length === 0) { $('.passengers-value').append(''); } $('.passengers-value .children').html('×' + value); $('.passengers-dropdown-column').last().append(getChildrenAgeWrapper(value)); let choicesChildrenAge = new Choices('.choice-children-age', { searchEnabled: false, itemSelectText: '', shouldSort: false, }); } } }); const getDefaultRoutesIds = () => { const routes = ['departureStation', 'arrivalStation'].map(routeId => { const routeElement = document.getElementById(routeId); return routeElement ? routeElement.innerText.toLocaleLowerCase() : null; }).filter(route => route); if (routes.length) { return routes.map(route => cities.find(city => city.label.toLocaleLowerCase() === route)?.value); } return []; }; const defaultRoutesIds = getDefaultRoutesIds();const route1 = defaultRoutesIds[0] || '';const route2 = defaultRoutesIds[1] || '';const getChoicesOptions = (placeholder, station1, station2) => { const filteredCities = cities .filter(city => city.value !== station2) .map(city => { if (city.value === station1) { return { ...city, selected: true }; } return city; }); return { itemSelectText: '', searchPlaceholderValue: placeholder, searchInputMoveToTop: true, shouldSort: false, choices: [ { label: '', value: '', placeholder: true, selected: true, disabled: true, }, ...filteredCities, ], };};const departureChoices = new Choices('.departure > .choice-station', getChoicesOptions('From', route1, route2));const arrivalChoices = new Choices('.arrival > .choice-station', getChoicesOptions('To', route2, route1)); $('.stations .choice-station').on('choice', function(event) { const citiesFilter = cities.filter(city => city.value !== event.detail.choice.value); if ($(this).closest('.choices').parent().hasClass('departure')) { arrivalChoices.setChoices(citiesFilter, 'value', 'label', true); } else { departureChoices.setChoices(citiesFilter, 'value', 'label', true); } }); function isTouchDevice() { return 'ontouchstart' in window || navigator.maxTouchPoints; } if (isTouchDevice()) { $('.search-inputs').on('touchstart', '.children-age-select .choices', function () { $(this).click(); }); } $('.search-inputs').on('change', '.search-date.error-validation, .stations.error-validation, .passengers.error-validation', function () { removeErrorAndUpdate($(this)); }); $('.search-inputs').on('click', '.passengers.error-validation .counter-minus, .passengers.error-validation .counter-plus', function () { removeErrorAndUpdate($('.passengers')); }); $('.train-search-form').submit(function (e) { e.preventDefault(); const formMode = $("input[name='form-mode']:checked").val(); const firstDateFormatted = datePicker.formatDate(firstDate, "Y-m-d"); let secondDateFormatted; if (formMode === link.mode.roundtrip) { if (datePicker.selectedDates[1]) { secondDateFormatted = datePicker.formatDate(datePicker.selectedDates[1], "Y-m-d"); } else { $('.search-date').addClass('error-validation'); errors['search-date'] = errorsMessages.noSecondDate; } } let stations = ''; const choicesStation = $('.choice-station option'); const departureStation = choicesStation.eq(0).attr('value'); const arrivalStation = choicesStation.eq(1).attr('value'); if (departureStation && arrivalStation) { stations = `&${link.departure(1)}=${departureStation}&${link.arrival(1)}=${arrivalStation}&${link.date(1)}=${firstDateFormatted}`; if (formMode === link.mode.roundtrip) { stations += `&${link.departure(2)}=${arrivalStation}&${link.arrival(2)}=${departureStation}&${link.date(2)}=${secondDateFormatted}` } } else { $('.stations').addClass('error-validation'); errors['stations'] = errorsMessages.noStations; } const adultsCount = $('input[name="adultsCounter"]').val(); const adults = `&${link.adults}=${adultsCount}`; let children = ''; let childrenAge = ''; const childrenCount = $('input[name="childrenCounter"]').val(); if (childrenCount > 0) { children = `&${link.children}=${childrenCount}`; const childrenWrappers = $('.children-age-wrapper'); for (let i = 0; i < childrenCount; i++) { const age = childrenWrappers.eq(i).find('.choices__item').attr('data-value'); if (age >= 0) { childrenAge += `&${link.childrenAge(i)}=${age}`; } else { $('.passengers').addClass('error-validation'); errors['passengers'] = errorsMessages.noChildrenAge; } } } const utmStations = `${$('.stations input.choices__input').eq(0).val()}-${$('.stations input.choices__input').eq(1).val()}`; const utmLink = `&query[${link.utmSource.name}]=${link.utmSource.value}&query[${link.utmMedium.name}]=${link.utmMedium.value}&query[${link.utmTerm.name}]=${utmStations}&query[${link.utmCampaign.name}]=${link.utmCampaign.value}`; if (Object.entries(errors).length !== 0) { renderErrorMessage(); return; } const redirectLink = `${domain}/?${link.mode.name}=` + formMode + stations + adults + children + childrenAge + utmLink; window.open(redirectLink, "_blank"); }); $('html, body').click(function (event) { if (!$(event.target).closest('.passengers').length && $('.passengers-dropdown').is(':visible')) { $('.passengers-dropdown').hide(); } }); $('.swap-stations').click(function () { const departureStation = $('.departure input.choices__input').val(); const departureCode = $('.departure select.choice-station option').val(); const arrivalStation = $('.arrival input.choices__input').val(); const arrivalCode = $('.arrival select.choice-station option').val(); $('.departure input.choices__input').val(arrivalStation); $('.arrival input.choices__input').val(departureStation); $('.departure select.choice-station option').val(arrivalCode); $('.arrival select.choice-station option').val(departureCode); const departureCitiesFilter = cities.filter(city => { if (city.value === +arrivalCode) { city.selected = true; } if (city.value !== +departureCode) { return city; } }); const arrivalCitiesFilter = cities.filter(city => { if (city.value === +departureCode) { city.selected = true; } if (city.value !== +arrivalCode) { return city; } }); departureChoices.setChoices(departureCitiesFilter, 'value', 'label', true); arrivalChoices.setChoices(arrivalCitiesFilter, 'value', 'label', true); }); $(window).resize(() => { let date = datePicker.selectedDates; if ($('#oneWayTrip').is(':checked')) { datePicker.set('mode', 'single'); datePicker.set('showMonths', 1); datePicker.destroy(); datePicker = $("#searchDate").flatpickr(flatpickrOptions); } else { if ($(window).width() > 725) { datePicker.set('showMonths', 2); } else { datePicker.set('showMonths', 1); datePicker.destroy(); datePicker = $("#searchDate").flatpickr(flatpickrOptions); } datePicker.set('mode', 'range'); } datePicker.setDate(date); }); });

Vancouver to Toronto Trains | Tickets & Schedule - CANADA TRAINS (2024)

FAQs

How much does it cost to ride The Canadian train from Vancouver to Toronto? ›

Information on this train trip
Daily Trains1
Minimum Price$512
Average Ticket Price$466
Minimum Trip Duration3d20h
Average Train Trip Duration3d20h
3 more rows

How often does the train go from Vancouver to Toronto? ›

​There is normally 1 train per day travelling from Vancouver to Toronto​ and tickets for this journey start from $579 when you book in advance. In terms of travel comfort, high-speed trains are one of the best options for connecting Vancouver and Toronto.

How much does a cross Canada train trip cost? ›

Fares
One way per person in CAD inc taxEconomy Class reclining seatPrestige class sleeper***
Toronto to Vancouver (or vice versa):From $444From $4,655
Toronto to Winnipeg (or vice versa):From $218From $2,601
Toronto to Jasper (or vice versa):From $367From $3,507
2 more rows

What is the cheapest way to travel from Vancouver to Toronto? ›

The cheapest way to get from Vancouver to Toronto is to fly which costs $85 - $390 and takes 6h 11m. What is the fastest way to get from Vancouver to Toronto? The fastest way to get from Vancouver to Toronto is to fly which takes 6h 11m and costs $85 - $390. Is there a direct train between Vancouver and Toronto?

How much is the luxury Canadian Sleeper Train from Toronto to Vancouver? ›

The Toronto to Vancouver sleeper train cost depends on the train class you select and the date you choose to travel. Fares for a cabin for two in Sleeper Plus Class start at approximately $2000 per person. Fares for Prestige Class cabins start at approximately $5000 per person.

Are Canadian train trips worth it? ›

Canada is home to some of the most scenic train trips in the world, but the greatest is undoubtedly The Coast to Coast by Train. This ultimate trip itinerary takes you across Canada to see the country's top highlights, including Peggy's Cove, Niagara Falls and Lake Louise.

How much luggage can you take on VIA Rail? ›

Any baggage weighing more than 23 kg/50 lb will not be allowed on board the Corridor trains. Each passenger is responsible for their own baggage. Please only bring baggage that you can carry and store unassisted (under the seat in front of you, on the overhead shelf or in the towers).

Does VIA Rail Sleeper Plus include meals? ›

Sleeper Plus Class

Enjoy the view and we'll take care of the rest, comfort and meals included! Depending on your trip, you can reserve private cabins and semi-private accommodations in upper & lower berths.

How much does it cost to ride a train with sleeper accommodations in Canada? ›

The cost varies between routes and the time of year but for the 2024 season for travel between Toronto and Vancouver, it will cost around CAD $2500 per person in the winter months and $4500 per person in the summer months for a Sleeper Plus cabin.

Can you get on and off The Canadian train? ›

The Canadian train run every four days. You can arrange to get off in certain destination to explore for the time in between. You'll stay in hotels overnight when you're not on the train. You'll have a good chance to see wildlife and the best sights in the Canadian Rockies where there are no roads.

What is the best time of year for a Canadian train trip? ›

May is the most popular month to travel because winter is over and train prices are lower than they will be in June, July, August and September. To balance the lower prices, temperatures are lower in Banff, Lake Louise and Jasper in May.

What is the best train across Canada? ›

Aboard VIA Rail's The Canadian train, you traverse nearly every landscape on Earth. The scenic Rocky Mountaineer is the only passenger train to have access to certain special historic Canadian Pacific Railway routes, such as the 1885 Canadian Pacific route between Vancouver and Banff.

How much is a train ticket from Vancouver to Toronto? ›

Cheap train tickets from Vancouver, BC to Toronto, ON can start from as little as $594 (€520) when you book in advance. The average train ticket price for Vancouver, BC to Toronto, ON is $810 (€709); however, prices vary depending on the time of day and class and they tend to be more expensive on the day.

Is there a 96 hour train from Vancouver to Toronto? ›

VIA Rail's Vancouver to Toronto train duration is approximately 95-96 hours. It is a sleeper train, which means you sleep onboard for 4 nights. The train departs Vancouver on Mondays and Fridays at 3pm. On Day 2, the train passes through Jasper at 11am and Edmonton at 6.50pm.

In which month Canada tickets are cheapest? ›

Flying from India to Canada: fast facts
Cheapest flight found₹ 34,631
Cheapest month to flyJune
Average flight time16 hrs, 32 mins
Most popular airlineAir India
Average flights per week55

Does VIA Rail sleeper Plus include meals? ›

Sleeper Plus Class

Enjoy the view and we'll take care of the rest, comfort and meals included! Depending on your trip, you can reserve private cabins and semi-private accommodations in upper & lower berths.

How much is VIA Rail vs Rocky Mountaineer? ›

VIA Rail covers the northern route across the province from Prince Rupert to Jasper. It's your budget option coming in at Cdn$139.00. The Rocky Mountaineer covers the southern route from Banff to Vancouver and is your luxury choice for Cdn$1,700 (or much more as I went for the lowest price they had).

Can you hop on and off the Canadian train? ›

It is of course also possible to board the Canadian at the stops in-between these two cities, e.g. Kamloops, Jasper, Edmonton, Saskatoon, Winnipeg, or Sudbury Junction, or hop on/off as I did, spending a few days in each city (so long as you book the journeys individually).

Top Articles
Latest Posts
Article information

Author: Margart Wisoky

Last Updated:

Views: 6155

Rating: 4.8 / 5 (58 voted)

Reviews: 81% of readers found this page helpful

Author information

Name: Margart Wisoky

Birthday: 1993-05-13

Address: 2113 Abernathy Knoll, New Tamerafurt, CT 66893-2169

Phone: +25815234346805

Job: Central Developer

Hobby: Machining, Pottery, Rafting, Cosplaying, Jogging, Taekwondo, Scouting

Introduction: My name is Margart Wisoky, I am a gorgeous, shiny, successful, beautiful, adventurous, excited, pleasant person who loves writing and wants to share my knowledge and understanding with you.