Union Station functions well considering it's the busiest railway station in Canada.
The station concourse has a Second Cup, McDonalds, Starbucks, Cinnabon...to name a few places. There's also a customer service area, ticket sales (beware: LONG lineups during peak periods!), Presto machines, and self-serve ticket machines (coins only!).
I can't say much about the VIA side, but the GO side can see some improvements. The signage around the station is terrible, and the track waiting area is a bit too open concept, so you're exposed to weather elements. That being said, passenger flow is quite decent and you're able to board your trains at least 10 minutes before departure.