Actually, It's not that easy as it's seems. It looks like .NET is implementing a set of different sorting algorithms depending on the input and his size. I used to decompile Array.Sort()
from CLR and it seems that they are using both Heap, Insertion and Quicksort. ![enter image description here](https://i.stack.imgur.com/AcsDl.png)