No.
However, if you want to cover more variations of the language (e.g. es-ES, es-MX, etc.), then it is required.
The same applies to script codes (e.g. zh-Hans, zh-Hant, etc.).
It should also be noted that it is a good practice to have a generic fallback language in order to avoid wrong language resolution.