React components are the building blocks of React applications. There are two types of components in React - functional components and class components. Functional components are simple JavaScript functions that return JSX, while class components are ES6 classes that can maintain internal state and pass data between other components. Components render reusable pieces of UI and the entire application UI is composed of different individual components.