Diferencia entre el evento KeyDown, el evento KeyPress y el evento KeyUp en Visual Studio

¿Alguien puede decirme la diferencia entre elKeyDown evento, elKeyPress evento y elKeyUp evento? Revisé el sitio msdn y no lo explica mucho.

¿Alguien puede decirme en sentido lógico simple cuando ocurre cada uno de los eventos? Siento que todo el evento anterior ocurre cuando se presiona una tecla. Entonces, ¿cuál es la diferencia exacta entre ellos?

Respuestas a la pregunta(5)

Su respuesta a la pregunta