Modern x86 cores can decode 9 variable length instructions per clock. It’s not easy but can be done.
RISK-V C instructions are on the other hand are trivial. All compressed instructions are 1-1 translatable to uncompressed instructions. People have measured the cost of adding C extension decoding as being a few hundred GATES.