The Roku only uses it to store channel info (when you've exhausted its internal storage). It's not used for buffering or saving video streams. So pretty much any microSD card will do. I stuck an ancient 1 GB card in mine after I started to get warnings that I needed to delete channels to add more. I have about 80 channels installed, and the card shows as 97% free. I suppose you might need a larger card if you had hundreds of channels installed, but otherwise it's a waste to put in a large card.
(I think it also uses it to store games if you have one of the Rokus which can play games.)
The card needs to be microSD, not microSDHC. So 32GB is the max size.