Serial Input Basics

All of these are blocking functions that prevent the Arduino from doing something else until they are satisfied, or until the timeout expires.

The readBytes() function may, or may not, block. It depends on whether or not it is called with a number of bytes to read that is less than, equal to, or more than what Serial.available() reports.