Ceramic resonators are adequate for all but the most accurate timing requirements - typically 0.5% or so - fine for async comms but not USB or timekeeping.
Resonators are available as 3-terminal devices with built-in caps to reduce component count. Unless you actually need the accuracy, ceramic resonators are generally the cheaper and smaller choice.