Imagine, the hardest single threaded bug you've ever had to solve rates about a 10 on a scale of 1 to 10.
The hardest concurrency bug on the same scale will be about 1000. https://en.wikipedia.org/wiki/Heisenbug
Concurrency bugs are notorious for changing their characteristics when you attempt to diagnose them, because they can be so sensitive to timings of events in your code.