Spring Cloud Stream is a lightweight framework for building message-driven microservices. It uses Spring Integration and Spring Boot to provide an opinionated runtime for messaging. It supports RabbitMQ, Kafka, and Kinesis for sending and receiving messages without needing broker-specific code. The programming model uses channels for input and output, and interfaces for common patterns - Source produces messages, Processor consumes and produces, and Sink consumes messages.