Возможно
@Psilon более правильный человек для этого вопроса, ибо я не видел дотнет уже лет 12, но для меня такие:
1. Типы делегатов номинативны
2. Они слишком тяжёлые, чтобы быть лямбдами (хранят внутри _список_ приёмников)
3. Из-за них в c# появились ненужные синтаксические конструкции, без которых вполне можно обойтись (event и +=)