There's not much difference in price for the different classes. Canon says you need a Class 6 card, but I would get a class 10. I like using UHS1 cards, mainly so I can transfer images faster between memory card and computer with my USB3 SD card reader. Get a name-brand card like Sandisk or Lexar. The no-name cards often don't meet the rated spec when doing continuous writing.
According to the manual, you can get about 2 hours of video content per 32GB. The camera will stop recording after 30 minutes or if the file size exceeds 4GB. The 4GB file size limit will probably be your limit. The card size is up to you.