Currently, the button "Search for all monitored episodes in season " seems to search for a single download that contains all episodes for the season but, in my experience, is rarely found.
It would be good if the an additional, failover behaviour was added where it will search for individual episodes.
It does search for everything in the season, it depends on what the indexer returns and how they are named. It won’t fallback to individual episode searches if no results are found.
If you look at the ((debug logs)) of a season search you can see everything that was returned by your indexers and processed by Sonarr.