Does GC make extra overhead?
Its a quite basic and very common question.
Yes, it is. It is because the Garbage Collector is running on a separate thread at back-end.
A separate thread always makes an extra overhead. That's why the Garbage Collector thread is given the lowest priority. But, when system sees managed heap is full then the Garbage Collector thread will be give REALTIME priority [which is the highest priority in WINDOWS].