WebSocket is a protocol that enables two-way, real-time communication between a client and server. Unlike HTTP where the client always initiates requests, WebSocket allows both sides to send messages anytime. It's like upgrading from walkie-talkies (HTTP) to a phone call (WebSocket) — you can talk and listen simultaneously.