Express.js is a web application framework for Node.js that provides a flexible set of features for building web and mobile apps. Express apps use middleware functions that have access to the request and response objects and allow for intermediate processing in the request-response cycle. Middleware functions can execute code, modify requests/responses, and call the next middleware function. Express supports application-level middleware, router-level middleware, error handling middleware, built-in middleware like static file serving, and third-party middleware.