I talk a lot about antipatterns and how to detect and avoid them, I have specifically taken to referring to sync-over-async as my arch nemesis!
I created this video as part of the launch for Visual Studio 2022 to lay out some guidance with examples of good and bad patterns. I show the tools I have used to capture diagnostics artifacts that can help with detection and remediation.
While in this video I suggest using Threading Analyzer nuget packages the Roslyn analyzer in .NET 6 has some significant improvements for detect async anti-patterns. Happy debugging!