Neighbouring Vancouver is even worse. Seattle is only as congested as Toronto.
Part of the problem is we're still building cities here like we did in the 1950s. Large sprawling suburbs with a single downtown core. There's very little edonomic development taking place in outlying areas, so everyone works in one centralized location. Cities are usually expensive, so people can't afford to live where they work. Toss that in with inadequate transit service for suburban areas, and you've got tons of congestion on the highways.
For in town traffic, it's largely the same issue. Suburban areas are not walk or bike friendly. You have to own a car to be able to go anywhere because shopping and entertainment is not within walking distances of most peoples homes.
Unfortunately, municipal planners rarely put infrastructure first when building new subdivisions. Developers don't care.
A lot of it can be solved by designing new communities with jobs in mind first, and then building them as compact, self contained units. Like a mini English village that's part of a larger whole.