In .NET BCL ci sono riferimenti circolari tra:
System.dlleSystem.Xml.dllSystem.dlleSystem.Configuration.dllSystem.Xml.dlleSystem.Configuration.dll
Ecco uno screenshot di .NET Reflector che mostra cosa intendo:

Il modo in cui Microsoft ha creato questi assembly è un mistero per me. È necessario un processo di compilazione speciale per consentirlo? Immagino che qui stia succedendo qualcosa di interessante.