Is there a compatibility issue between micro SD and micro SDHC?

I'm wanting to upgrade my memory and noticed that the maximum GB's that I can find on an micro SD is 16. I have however found many options for the 32 GB micro SDHC. Is the 32 GB micro SDHC compatible with with the Optimus C? or, is the maximum memory I can install to the "C" 16 GB? or, have I not looked hard enough and maybe there is a 32 GB micro SD out there?

Also, how much does the class affect processing speeds in regards to the memory chips participation. Should I look for a class 4 or 6 instead of the basic 2