F1 races are usually a specific distance, based on track length, so the actual time varies slightly. I believe the max time limit for a race before it's called as finished - to account for safety car delays, or weather delays - is 90 minutes.
The 5 hour time thing mentioned is actually a pretty good estimate of how long you may be in your seat, as you'd want to get there a bit early and leave your seat a bit later, as crowds can be very slow moving (all depends on where you are sitting).
I would say it is worth experiencing it at least once. It is a bit boring as you obviously don't see that much of the cars and only part of the track. There are usually big screens around though so you can see some of the race. I vividly remember the 2007 race, as we were near the hairpin when Kubica had his massive crash. Seriously eerie as it got a heck of a of a lot quieter than it had been and everyone thinking what they don't want to be thinking.
As for outside of the race, Montreal downtown is totally bonkers. Lots of street parties and stuff going on. Really good party atmosphere, but this was back in mid 2000's so might have changed.
Given the whole Drive To Survive tv show and the uptick in fans, it is likely to be even busier than I remember.
Oh and when you're you are on the island, you might get lucky and see a groundhog hanging out in one of the raised green areas before you get into the track itself.