SQL JOIN - cláusula WHERE vs. cláusula ON

Después de leerlo, este no es un duplicado de uniones explícitas vs implícitas de SQL . La respuesta puede estar relacionada (o incluso la misma) pero la pregunta es diferente. ¿Cuál es la diferencia y qué debe ir en cada uno? Si entiendo la teoría correctamente, el optimizador de consultas...