Итак, я сделал глупую ошибку, я назвал myControl.Controls.Add(myControl);. Достаточно легко. Интересно то, что это приводит к сбою IIS, и в фактической структуре возникает исключение. Я даже не сломался и не дал отладить, он просто развалился.
Кажется, что это должно было быть обработано платформой .NET лучше, чем было. Или должно? Является ли это ожидаемым поведением с такой ошибкой, или отладчик мог бы обработать ее более элегантно?