Compile-time polymorphism, also known as static polymorphism, is a programming paradigm that allows the selection of the appropriate function or method to be invoked at compile time rather than at runtime. This is typically achieved through mechanisms like function overloading and operator overloading, enabling more efficient code execution and type safety.