.NET BCL에는 다음 사이에 순환 참조가 있습니다.
System.dll과System.Xml.dllSystem.dll과System.Configuration.dllSystem.Xml.dll과System.Configuration.dll
다음은 내가 의미하는 바를 보여주는 .NET Reflector의 스크린 샷입니다.

Microsoft가 이러한 어셈블리를 만든 방법은 나에게 미스터리입니다. 이를 허용하려면 특별한 컴파일 프로세스가 필요합니까? 여기서 흥미로운 일이 벌어지고 있다고 생각합니다.