https://www.youtube.com/watch?v=za91AjX-V7M Неплохое видео про делегаты. Единственное что важно воспринимать именно так как объяснил автор в двух словах с замыканиями (так как мне знакомый задал вопрос). Конкретно этот пример: // Mistake #2: Capturing This Implicitly void SetupTemporaryCallback() { // This lambda implicitly captures `this` Action callback = () => Debug.Log($"Enemy name: {name}"); callback?.Invoke(); } Мне задали вопрос по формулировке автора, а что тут создается целиком копия объекта? Нет, создается "объект замыкания" (он довольно небольшой) со ссылкой на исходный объект. И в этом появляются две проблемы: 1) Вызывать часто = куча мелких аллокаций 2) Не совсем очевидно когда объект можно будет собрать сборщиком мусора, он дольше задержится в памяти, потенциальный мемори лик. А так видео хорошее, и инверсию управления затронули и так далее. Я бы ещё сказал, что сейчас ключевым словом delegate почти не пользуются. Как и анонимными делегатами. С появлением generic-деле