GCM (Google Cloud Messaging) is a free service that allows application servers to send lightweight messages to Android applications. It eliminates the need for continuous polling of a server for updates by allowing messages to be pushed to devices even when apps are not running. Developers must integrate the GCM client library into their Android apps, register their apps with the Google API console to obtain an API key, and handle incoming messages with a GCMIntentService. The GCM service replaces the deprecated C2DM service with easier setup and no quotas on messages.