Problem :
What tools are available to profile a .NET program by measuring function execution times and generating graphs to visualize the time spent at various points in the call graph?
Solution :
It’ll cost you but Ants Performance Profiler will do the job.
AQTime and dotTrace are two very good commerical profilers.
A free option would be ProfileSharp, though I have had little luck with it.
Microsoft provides the CLR Profiler as well, which works well, but has fewer features.
There is a free C# IDE SharpDevelop 3.1, which has integrated profiler, and it is compatible with Visual Studio solutions.