While getting message content in 20 parallel requests
To start with the MailboxConcurrency for the Graph is 4 requests (which is way too low but not something you can really change AFAIK)
The first place to start would be if your 20 requests are single requests look to use batching https://learn.microsoft.com/en-us/graph/json-batching, inside the batch you can "Sequencing requests with the dependsOn property" which means your batch request can contain 20 single requests but will only use one mailbox connection, otherwise you need to limit the batch size to 4 because requests in the batch will be executed in parallel so for example if you tried to execute a batch request with 5 requests the last request would be throttled in the batch because of the Concurrency Limit. If your using dependsOn and batching up 20 request then you need to make sure your thread pool doesn't make any more the 4 concurrent requests (eg fix its size if you can).