Definition
Multiple things happening at the same time inside a program, which can produce bugs that depend on the exact order.
A programming regime where multiple threads or processes can execute interleaved or simultaneously, often producing bugs visible only under specific interleavings.