Object-Oriented Programming (OOP) is a programming paradigm that structures software using objects and classes. It focuses on organizing and designing software around objects, which are instances of classes containing both data (attributes) and methods (functions) that operate on the data.