GraphQL is a query language and runtime for APIs that enables clients to request only the data they need. Unlike REST, which exposes multiple endpoints for different resources, GraphQL provides a single endpoint for all queries and mutations.