After hundreds of performance investigations, some patterns begin to emerge. You could save a lot of time here, or find the root cause more easily there. In this talk, you’ll see what I learned from years of performance work in the field, which processes and tools work, and what I think can still be improved. First, we’ll talk about anti-methods for performance investigations and the USE checklist for finding the performance bottleneck, applied specifically to Windows and .NET applications. Then, we’ll talk about ideal performance investigation tools and which tools can satisfy these needs today, and review the power of Event Tracing for Windows for extracting hard-to-find information out of the system. Finally, we’ll talk about dashboards and visualizations, and where the gaps are between figuring out an issue on one system and monitoring thousands of servers. Along the way, I’ll take you on a tour of a couple of my most challenging performance investigations.