SignalR is an ASP.NET library that allows adding real-time web functionality to applications. It uses HTML5 WebSockets for bidirectional communication between client and server. When WebSockets are not available, it uses other fallback techniques like long polling. On the client, SignalR uses JavaScript to connect to hub methods defined on the server, allowing real-time server calls to client functions. This enables use cases like chat, dashboards, and games by facilitating continuous two-way communication channels.