Ну опять же, лезем в интернет, в документацию...
display отображает на экран всё, что было "нарисовано" в процессе рендеринга. Например, у нас несколько этапов "прорисовки", а показать надо только финальный результат.
void sf::Window::display ( )
Display on screen what has been rendered to the window so far.
This function is typically called after all OpenGL rendering has been done for the current frame, in order to show it on screen.
clear очищает область "рисовки". Иначе всё нарисуется поверх прошлой картинки. Представьте, что вы рисуете секундную стрелку на часах, а старое изображение стрелки не стирается.
void sf::RenderTarget::clear ( const Color & color = Color(0, 0, 0, 255) )
Clear the entire target with a single color.
This function is usually called once every frame, to clear the previous contents of the target.
Обработка событий - это уже особенности WinApi. Каждый пользовательский объект в Windows имеет очередь событий, и в коде обязана быть функция их обработки, если вы события не "потребляете" (такие как нажатие клавиш, перемещение курсора), очередь "забивается" и происходит такая канитель с значком загрузки.