The ! operator in C is the logical NOT operator. It is used to reverse the logical value of its operand. If the operand is true (non-zero), the ! operator makes it false (0), and if the operand is false (0), the ! operator makes it true (1). It is used for negation in logical expressions.