They are channels with capacity to hold one or more values
buffChan := make(chan string, 10)
They don't require both the sender and receiver to be available at the same instant
They have different blocking rules
- A receive will block only if there is no value on the channel to receive
- A send will block only if there is no available buffer to place the value being sent.