It all depends on what you want to store and how much of it - Obviously the more you intend to store on your phone (photos, music, documents) the more capacity you want to have. I always go for the max that will fit (32 GB in most cases) because I keep allot if music on mine, but you can get anything from 2GB up to 32 in most electronics stores or online.
After that is what access speed you need. There are class 2,4,6, & 10 cards with each number denoting a higher read/ write speeds. The higher numbers are supposed to give you the fastest speeds depending on what you're doing. For music and documents, access speed really isn't much of a factor and class 2 or 4 cards are cheaper to get and work just fine. If you take allot of photos, you want a class 10 so you're not waiting as long for the image to store between shots.
As for brands, you want to stick away from no names but everyone has their own opinion on which name brands are the best.
I hope that helps a little!