Para a pergunta específica "O pClass será coletado de lixo": a assinatura do evento não afeta a coleta do pClass (como o editor).
Para o GC em geral (em particular, o destino): depende se MyFunction é estático ou baseado em instância.
Um delegado (como uma assinatura de evento) para um método de instância inclui uma referência à instância. Então, sim, uma assinatura de evento impedirá o GC. No entanto, assim que o objeto que publica o evento (pClass acima) é elegível para coleta, isso deixa de ser um problema.
Observe que isso é unidirecional; ou seja, se tivermos:
publisher.SomeEvent += target.SomeHandler;
o "editor" manterá o "alvo" ativo, mas o "alvo" não manterá o "editor" ativo.
Portanto, não: se o pClass for coletado de qualquer maneira, não há necessidade de cancelar a inscrição dos ouvintes. No entanto, se pClass foi longa vida (mais do que a instância com MyFunction), então pClass poderia manter essa instância vivo, por isso iria ser necessário cancelar a inscrição se deseja que o alvo a ser coletado.
Eventos estáticos, no entanto, por esse motivo, são muito perigosos quando usados com manipuladores baseados em instância.