  Two-dimensional color codes are a promising candidate for fault-tolerant
quantum computing, as they have high encoding rates, transversal implementation
of logical Clifford gates, and high feasibility of magic state constructions.
However, decoding color codes presents a significant challenge due to their
structure, where elementary errors violate three checks instead of just two (a
key feature in surface code decoding), and the complexity in extracting
syndrome is greater. We introduce an efficient color-code decoder that tackles
these issues by combining two matching decoders for each color, generalized to
handle circuit-level noise by employing detector error models. We provide
comprehensive analyses of the decoder, covering its threshold and sub-threshold
scaling both for bit-flip noise with ideal measurements and for circuit-level
noise. Our simulations reveal that this decoding strategy nearly reaches the
best possible scaling of logical failure ($p_\mathrm{fail} \sim p^{d/2}$) for
both noise models, where $p$ is the noise strength, in the regime of interest
for fault-tolerant quantum computing. While its noise thresholds are comparable
with other matching-based decoders for color codes (8.2% for bit-flip noise and
0.46% for circuit-level noise), the scaling of logical failure rates below
threshold significantly outperforms the best matching-based decoders.
