Что лучше:
Private Sub Window_Closed(sender As Object, e As EventArgs) Handles Me.Closed
'Do stuff
End Sub
Protected Overrides Sub OnClosed(ByVal e As System.EventArgs)
MyBase.OnClosed(e)
'Do stuff
End Sub
Лично я считаю, что второе лучше, первое, потому что оно не добавляет обработчик, а также потому, что синтаксис более прост.
Особенно в C #, где добавление обработчиков является более надежным, и нет ключевого слова handles.