Application A uses assembly B which references assembly C, but C is actually never used at runtime in A. Can C be safely omitted from the installer for A?
It seems C is never loaded, so there should be no problem. Does the CLR guarantee when an assembly will (not) be loaded? Are there any other hidden traps?
Similar question 1 mentions some books and MSDN magazines that claim there are ways to avoid loading assemblies.
Similar question 2 on the other hand claims it is not deterministic.
Is there an authorative source of information (e.g. MSDN documentation or CLR specification, etc.) that can be used to back up either claim?