An HOC is a function that takes a component and returns an enhanced version of it. It's a pattern for reusing component logic (e.g., withAuth, withLogger).