I know that French orthography is actually quite regular, in the sense that while there are numerous rules and certain exceptions, it's possible in the vast majority of cases to deduce the pronunciation reliably from the spelling.
However, there are certain classes of words where the pronunciation is not predictable: œuf/œufs, and special pronunciations to facilitate disambiguation such as tous and plus. Or the fact that we write ai (from avoir) but say [e] even though usually the sequence ai represents [ɛ], or that eurent is pronounced [yʁ] even though eu is usually [ø].
I've been trying to find out other classes of French words whose pronunciation is not predictable from the orthography, but I've turned up nothing but information about irregular verbs.