Performance Profiling Your .NET Application

Using Performance Counters In The C# Language
http://www.coderslexicon.com/using-performance-counters-in-the-c-language/

An Introduction To Performance Counters
http://www.codeproject.com/Articles/8590/An-Introduction-To-Performance-Counters

Beginners Guide to Performance Profiling
http://msdn.microsoft.com/en-us/library/ms182372.aspx

Tools and Techniques for .NET Code Profiling
http://msdn.microsoft.com/en-us/magazine/hh288073.aspx

.NET Internals: The Profiling API
http://www.blong.com/Conferences/DCon2003/Internals/Profiling.htm

JetBrains Profiling Tool for .NET Applications
http://www.jetbrains.com/profiler/

Miniprofiler.Windows
http://nootn.github.io/MiniProfiler.Windows/

Performance Profiling Console (or Win/WPF) Applications
http://www.nootn.com.au/2012/07/performance-profiling-console-or-winwpf.html#.UlLmDVCOTVU

MiniProfiler: A simple but effective mini-profiler for .NET and Ruby.
http://miniprofiler.com/

 

Six important .NET concepts: Stack, heap, value types, reference types, boxing, and unboxing
“In order to see how the performance is impacted, we ran the below two functions 10,000 times. One function has boxing and the other function is simple. We used a stop watch object to monitor the time taken.
The boxing function was executed in 3542 ms while without boxing, the code was executed in 2477 ms. In other words try to avoid boxing and unboxing. In a project where you need boxing and unboxing, use it when it’s absolutely necessary.”
http://www.codeproject.com/Articles/76153/Six-important-NET-concepts-Stack-heap-value-types