Для конкретного вопроса «Будет ли pClass собирать мусор»: подписка на событие не влияет на коллекцию pClass (как издателя).
Для GC в целом (в частности, для цели): это зависит от того, является ли MyFunction статической или основанной на экземплярах.
Делегат (например, подписка на событие) для метода экземпляра включает ссылку на экземпляр. Так что да, подписка на событие помешает GC. Однако, как только объект, публикующий событие (pClass выше), подходит для сбора, это перестает быть проблемой.
Обратите внимание, что это односторонний; т.е. если у нас есть:
publisher.SomeEvent += target.SomeHandler;
тогда «издатель» будет поддерживать «цель» живым, но «цель» не будет поддерживать «издателя» живым.
Так что нет: если pClass будет собираться в любом случае, нет необходимости отписываться от слушателей. Однако, если pClass был долгоживущим (дольше, чем экземпляр с MyFunction), тогда pClass мог бы сохранить этот экземпляр живым, поэтому необходимо будет отписаться, если вы хотите, чтобы цель была собрана.
Однако по этой причине статические события очень опасны при использовании с обработчиками на основе экземпляров.