Search Transit Toronto

GO Transit's Milton Line

Text by Daniel Garcia and James Bow

See Also:

Service Today

Before the COVID-19 pandemic, the Milton GO train line offered ten Toronto-bound departures on weekday mornings, and nine return journeys in the afternoon rush hour. All trains make all intermediate stops which, from Milton east are Lisgar, Meadowvale, Streetsville, Erindale, Clarkson, Dixie and Kipling (where a connection is available with the Toronto subway), before ending their journeys at Toronto's Union Station. The service is also fed and augmented by a number of bus routes, including dozens of "train-buses" throughout the day and during weekends, as well as shuttle services linking rush hour trains to and from Waterloo Region. The average daily ridership of the Milton GO Train line, as of 2014, is near 30,000 passengers.

GO's Milton line is unique in many ways. It is the only train line to operate largely on Canadian Pacific rails. Because of this, labour disruptions that affected the Canadian National lines and crews had no impact on Canadian Pacific service, and Milton GO trains would sometimes run when other GO Train service was halted. The Milton line has the second-highest ridership of the GO train lines on the network (after the combined Lakeshore East and West service). It was the first GO Train line other than the Lakeshore line to offer two-way midday service. It was, for years, the focus of the most plans for increased service outside of the Lakeshore GO Line, and was almost the first GO Train to reach Waterloo Region, before focus shifted to GO's Kitchener line.

Early History

Service on the Milton GO Train line began on October 25, 1981, making Milton the fourth GO Train line of the system (after Lakeshore West and East, Georgetown [now Kitchener] and Richmond Hill. Unlike the Lakeshore and Georgetown lines, it replaced no passenger service. Although passenger trains had used the Canadian Pacific tracks to access Toronto's Union and North Toronto stations from London, Galt and Orangeville, passenger service on the Canadian Pacific tracks had ended years before 1981.

However, the provincial government saw a strong need for the Milton GO Train line. Not only did it serve the rapidly expanding suburbs of Peel and Halton, GO Transit's original mandate was to reduce pressure on parallel provincial highways. The Lakeshore GO Train line was doing just that with the Queen Elizabeth Way west of Toronto and Highway 401 east of Toronto. However, with suburban development spreading north through Mississauga, Highway 401 west of Toronto was seeing a significant increase in traffic. The Canadian Pacific tracks were ideally placed to offer GO Train service to Meadowvale and Milton, which could divert drivers off the crowded highway. It would also intercept Mississauga riders who were heading south to catch rush hour trains on the Lakeshore line, producing crush loads.

Service Expands, Contracts, then Expands Again

The Milton GO train launched with three round trips every weekday, stopping at Kipling, Dixie, Cooksville, Erindale, Streetsville and Milton. Kipling station opened with a direct connection to the western terminus of the Bloor-Danforth subway (indeed, one could only access the station by going through the TTC property), opening up more of the city of Toronto for western-GTA commuters. Each station boasted ample parking to intercept drivers, and the service proved popular enough that, on July 9, 1989, GO Transit added two more weekday round trips.

On October 29, 1990, service began on a number of two-way midday runs on the Milton GO line, making Milton the first GO Train line other than Lakeshore to offer train service outside of the rush hour. The goal was to try and reduce the pressure on the Lakeshore GO Train line, especially through Mississauga. Most midday service on the Milton line consisted of a single trainset operating between Union and Erindale stations (with buses connecting passengers to Streetsville, Meadowvale and Milton), with the first outbound trip leaving Union around 8:30 a.m. and the last inbound trip departing Erindale just before the start of the afternoon rush hour.

Unfortunately, the additional service didn't last. Budget cuts forced the midday Erindale trains to stop running on January 8, 1996, to be replaced by 'train-buses' operating throughout the day, serving all stations on the route, save for Kipling.

But ridership was increasing, as suburban development continued north and west, enveloping Milton, and putting additional commuters onto Highway 401 from further west in the Greater Toronto Area. A sixth Milton GO train was added in 2002, followed by a seventh in June 2009 and an eighth in June 2012. In 2006, GO Transit opened a new layover facility east of Milton station, replacing a layover facility at Guelph Junction west of Campbellville. On September 4, 2007, Lisgar station opened to the public. Located on Argentia Road in northwest Mississauga, between Meadowvale and Milton stations, the station provides links for Mississauga and Brampton transit buses, and parking spaces for 788 cars.

A Tour of the Line

Milton GO Trains depart Union station and follow the Canadian Pacific's former Galt Sub paralleling the Weston Sub (both subs are now owned by Metrolinx) past Bloor station on the Kitchener GO line. It largely uses separate tracks to do this, and did not have access to the Bloor station platforms when it opened, as it was thought the stop was redundant with Milton trains already connecting to the Toronto subway at Kipling. As Bloor station and the Weston sub are being redeveloped for additional service to Kitchener, and the Union-Pearson Express, it is possible that Milton trains may get access to Bloor station platforms; whether or not they use them is another matter.

North of Bloor station, Milton trains continue to parallel the tracks of the Weston sub, approaching the West Toronto Junction. There, Milton trains curve west and join Canadian Pacific's freight tracks paralleling Dundas Street. When Canadian Pacific sold this end of its Galt subdivision, they tore up the north-south track that crossed its east-west freight tracks and connected with CP's track heading north to Bolton. Instead, they installed a south-to-west track to complement their existing south-to-east track, allowing freight trains to access their Bolton track directly, rather than use Canadian National trackage, or its yard at Agincourt to turn around. GO Transit also upgraded its north-to-west turn to allow for higher speeds as trains sped through the junction. Previously, GO Trains using the old curve were limited to just 30 kilometres per hour. The new curve also connects directly to the Canadian Pacific mainline, bypassing the throat to a yard located south of the CP mainline.

Heading west, and passing over a bridge over Keele Street, passengers can see a large yard opening up north of the tracks. This yard is still in use at the time of this writing (July 2014), as Canadian Pacific drops off and picks up blocks of cars serving local industries. This is Lambton Yard, which used to be Canadian Pacific's main steam-era maintenance facility. Although this facility was replaced by a small locomotive maintenance area at Runnymede Road, the level of traffic operating on Canadian Pacific tracks through this area and points west remains the major obstacle to increased service on the GO Train line.

West of Lambton Yard, after crossing over bridges over Jane Street and Scarlett Road, Milton GO Trains cross a tall bridge over the Humber River. This can be a beautiful sight, especially in the fall, and it remains a favourite place for railfans to catch trains on camera.

After crossing the Humber, the line turns sharply southwest, passing first single-family homes and then high-density apartment buildings as it approaches Bloor Street and Islington Avenue. After passing the park'n'ride lots of Islington Station, the line is joined by the Bloor Subway just to the north, as both pass industrial lands on their way to Kipling Avenue. Both the subway and the Galt sub pass beneath a high bridge carrying Kipling Avenue before coming to the Milton line's first stop, Kipling station, where the Bloor-Danforth Subway terminates.

Kipling GO station offers an island platform between two tracks. Most trains stop on the south track, which is the main line, but occasionally trains will use the north track to bypass a coming freight train. The station's only exit at the east end of the platform, past a ticket booth and down a flight of steps to a tunnel beneath the railway tracks connecting the station's main entrance with the southern parking lot. Because of this arrangement, whenever TTC drivers go on strike, Milton trains are forced to bypass this station, as their only exit is locked. The lack of space for an elevator and questions surrounding who should pay for it has meant that Kipling GO station remains the only wheelchair inaccessible station on the Milton GO line. The parking lots at Kipling are owned and operated by the TTC, but can be accessed by GO patrons, if they're willing to pay the entry fee.

On to Mississauga

Directly opposite Kipling station lies the junction to the Canpa Sub, known to railfans as "the Cutoff". These tracks run south to meet with the Oakville sub just west of the Willowbrook maintenance centre. It sees only freight traffic -- and sporadic traffic at that. In addition, just past Canpa junction on the south side of the mainline, is Obico Yard, one of Canadian Pacific's two largest intermodal terminals in the Greater Toronto Area (the other is the Vaughan Intermodal Terminal). The activity in this yard will provide something for railfans to enjoy as GO Trains shoot past.

West of Kipling station, the industrial scenery continues, with occasional lapses as the train passes beneath Highway 427 and above Etobicoke Creek. The next stop is Dixie GO Station, located off of Dixie Road, south of Dundas Street East. This station offers connections with MiWay buses on Dixie Road, and a long walking connection with services on Dundas Street. There are also parking spaces for 685 cars.

The industrial character of the line continues as it moves west, ending abruptly as the line crosses Hurontario Road over a bridge and stops at Cooksville station. To the north of Cooksville station, town homes house potential passengers. To the south, a large commuter lot (with space for 1,458 cars) separates the station from a large development of high rise apartments. The commuter lot is accessed through an underpass between the platform and the station building. Many passengers use this station, and crowds on the train noticably thin out once afternoon trains reach it. There are connections with major MiWay bus routes, including express services to Square One and the City of Brampton, and this will be a likely stop on Mississauga's coming Hurontario LRT line.

West of Cooksville station, the Milton line's surrounding character flips between residential to industrial. The number of green spaces increases as the rails turn north and enter Erindale station. Here, another large parking lot abuts the station, with space for 770 cars, and high rise developments can be seen in the distance. In addition, a new multi-level parking structure opened near the station in the summer of 2013, with space for 1,700 cars. Erindale station has an island platform with tracks on both sides. Renovations ending in the summer of 2013 made the station fully accessible, and offered a new bus loop as well as a covered pedestrian bridge connecting the station to Eglinton Avenue.

Past Erindale, the Milton GO line continues north, through burgeoning subdivisions that abruptly change from modern to older industrial, commercial and residential buildings as the Milton line enters the village of Streetsville. Streetsville station Crossing Mississauga Road at grade, the line soon reaches Streetsville station. This island platform is steps away from the old village downtown, but there is also a commuter parking lot for 1,329 cars and a bus loop with five platforms accessed via a tunnel.

North of Streetsville, industries abut the right-of-way again, as tracks branch off, some heading up through Caledon to Orangeville. This used to be a line that could take passengers to Owen Sound, until Canadian Pacific abandoned the train in the late 1960s. Businesses in the Town of Orangeville have bought the line between Orangeville and Streetsville and maintain the Credit Valley tourist railway along it. Although Canadian Pacific no longer owns the tracks, Metrolinx has studied the route as a possible means to extend GO Train service to Orangeville.

Passing more industries, the line reaches Meadowvale station. Here, a single side platform is connected to a five-bay bus terminal and a commuter lot with space for 1,600 cars. Mississauga Transit feeds local passengers into the station, and it is also a stop on the Milton train-bus line, and other GO transit buses connecting Milton to Yorkdale and York University's Keele Campus.

West of Meadowvale station the line curves west and pushes to the edge of Mississauga where it meets Lisgar station at Argentia Road. This stop was built to relieve pressure on Meadowvale station; it opened on September 4, 2007. Located close to Highway 401, it has a parking lot with spaces for 788 cars and a six-bay bus terminal offering connections to MiWay and Brampton Transit as well as Milton Train-Buses. The station also boasts a 50 kW wind turbine, providing 80% of the station's power needs. Set up in the spring of 2009, the turbine takes advantage of the heavy prevailing winds in the area. It was the first on-site wind generator set up for a transit system in North America.

And on to Milton

Past Lisgar, the Milton line continues west and leaves Mississauga, running through rapidly developing former countryside through the Town of Milton. Since 2010, farm fields have given way to industries and intermodal terminals as the line enters the urban section of Milton. On its approach, Milton trains pass the new Milton layover facility, with sufficient track space to hold eight 12-car trains. This facility replaced an older storage facility at Guelph Junction, which could not be expanded from its capacity of five 10-car trains.

Milton station is located some distance south from Main Street, behind a large parking lot able to hold 1,082 cars. Highway 401 is just a five minute drive away. The station's single platform provides easy access to a bus terminal where many Milton and GO buses (including shuttle buses serving Cambridge, Kitchener and Waterloo) meet arriving trains. The tracks, continuing west-northwest, used to cross Main Street in a large four-track level crossing, but through 2013 and 2014, work was underway to replace this with an underpass.

Though Milton is at the end of the line, trains never linger. All passengers must disembark, and the trains soon close their doors and backtrack to their storage facility. They have to clear the track, lest they get in the way of a pressing Canadian Pacific freight train.

The Future: Pressure and Resistance.

In early December 2014, GO Transit and Metrolinx announced the launch of a ninth rush hour train on the Milton line. This train, launched on January 5, 2015, departed Milton at 8:30 a.m. and arrived at Union Station at 9:30. The return train departed Union at 3:30 p.m., arriving in Milton at 4:30 p.m. On September 6, 2016, a tenth Milton train was added, inbound in the morning and outbound in the afternoon in the thick of the rush hour.

In addition, four new buses were added to operate between Milton GO station and Ainslie Street Terminal in Cambridge, although these were cut in June 2019 due to low ridership. Numerous GO "Train-Buses" continue to provide service in both directions between Milton and Union throughout the week. In 2020, Metrolinx released a strategic plan which called for the expansion of service to every 15 minutes or better from Meadowvale during peak hours (with counter-peak service every 30 minutes) and half-hourly off-peak service to Meadowvale, with connecting buses to Milton.

Pressure to expand Milton GO train service comes from two sources: demand from the residents of Milton and Mississauga wishing to avoid traffic congestion on Highways 401 and 403 as well as passenger congestion on the Lakeshore GO line, and demand from the residents and politicians of Waterloo Region, particularly Cambridge, looking to improve their connections with the Greater Toronto Area. Resisting this pressure are the owners of Canadian Pacific, who see GO Trains as a potentially unwelcome obstacle to their freight movements.

It is important to note that, with the exception of the Milton GO Train line, all GO Train service operates on tracks that GO either leased or bought from Canadian National, or which it built itself. GO Transit's Lakeshore line uses CN's Oakville and Kingston subdivisions which, in the 1960s, saw a significant decline in traffic as CN opened up its MacMillan freight yard north of Metropolitan Toronto, and its York Sub bypassing the Lakeshore tracks from Oakville to Pickering. Very quickly, GO Transit became CN's biggest customer on CN's Lakeshore tracks, and CN was willing to accommodate GO Transit's needs, first in offering train time, and then in selling parts of its track network. Although GO Transit had to add additional tracks in order to expand service west from Oakville and east from Pickering on the Lakeshore line, they were largely able to expand service because CN did not see GO Transit as a threat or an obstacle to their freight traffic. Similar situations exist for GO Transit's Kitchener, Barrie and Stouffville lines.

In contrast, Canadian Pacific's Galt sub through Mississauga and across the City of Toronto is its only main line between Toronto, London and Windsor. There is no bypass for CP's freight traffic to divert onto. GO Transit has had to spend a considerable amount of money adding rails in order to obtain the service it currently has. GO Transit did purchase the Lower Galt Subdivision tracks from Union Station to the West Toronto Diamond from Canadian Pacific on March 31, 1997, but those were the only tracks CP was willing to part with, as they were largely surplus to the freight railroad's needs. So while GO would like to offer midday two-way service on the Milton line again, improving service to Mississauga, and possibly augmenting Bloor-Danforth subway service through Toronto, negotiations with Canadian Pacific have proved frustrating, and the expansion of service has proven to be prohibitively costly. Add in provincial interest in a rail link between Union Station and Pearson International Airport, and one can see why much of GO Transit's rail construction work has focused on expanding track capacity and service on the Weston Sub between Toronto and Bramalea, especially after Metrolinx was able to purchase the Weston Sub from Canadian National for $109 million.

Cambridge Versus Kitchener

A similar problem exists for the proposal to extend Milton GO Train service to Cambridge. Service to Waterloo Region has proven popular since bus service was extended to Cambridge, Kitchener and Waterloo in October 2009; double decker buses now ply the route between Waterloo and Mississauga. Around that time, the Region of Waterloo put forward a study indicating that train runs to Water Street in downtown Cambridge (with intermediate stops at the Guelph Line in Campbellville, Highway 6 south of Guelph and Franklin Avenue in east Cambridge) were feasible, but that the cost for such an extension was $110 million, with at least 17.7 miles of new track required to increase the rail line's capacity enough to overcome Canadian Pacific's objections. In the interim, the provincial government paid just $18 million to build a two-track layover yard and extend two Georgetown trains into the City of Kitchener.

In the provincial budgets around the 2014 election, the provincial government has focused heavily on expanding regular two-way, seven day a week service between Toronto and Kitchener, much to the chagrin of Cambridge mayor Doug Craig who argued that Cambridge trains could get to Union faster, and be of better use to commuters using Highway 401. However, Metrolinx remains cool to such an extension, likely due to the resistance that Canadian Pacific continues to put up towards expansion of Milton GO Train service. Two round-trips may be added to Cambridge in the near future at minimal cost, but expanding full service to Milton and Cambridge may require more resources that Metrolinx has available, especially given that resources have been more easily spent upgrading the former Canadian National tracks to Kitchener.

Only time will tell. The pressures to expand Milton GO Train service are only going to build as the population of Waterloo Region and the western GTA continues to grow. With that, the increase in political will for such an expansion may become too great for Metrolinx to ignore, and Canadian Pacific to resist.

Milton GO Train Image Archive

Additional Articles


Support us on Patreon Button

Welcome to Transit Toronto! This is an information site dedicated to public transportation in Toronto, maintained by transit enthusiasts for transit enthuasiasts. This is NOT the official website of the Toronto Transit Commission, Metrolinx or any other transit provider or government agency. To access the official websites of these agencies, consult this page here.