A service worker is a programmable proxy that sits between the browser or app and the network. It intercepts network requests and caches resources, enabling offline access, improved performance, background synchronization, and push notifications. Service workers are event-driven, have no direct access to the DOM, require HTTPS for security, and are a core technology used to build Progressive Web Applications (PWAs).