Событие Closing в C# происходит, когда форма закрывается, а FormClosing — первым, когда пользователь хочет закрыть форму. 2 Оно даёт возможность спросить пользователя, действительно ли он хочет покинуть приложение. 2
Ещё одно отличие в том, что FormClosing предоставляет обработчику события CloseReason, что позволяет по-разному обрабатывать закрытие формы в зависимости от причины. 4