¿Cuál es la diferencia entre un objeto literal JS y una cadena JSON?

Tengo confusión acerca de lo que exactamente significa la gente por Literales de Objetos, JSON, Objetos de JavaScript, a mí me parecen similares:

{foo: 'bar', bar : 'baz'}

AFAIK, el objeto anterior es literal, json y javascript, ¿no es así?

¿Objeto literal y json significan lo mismo?

¿Cómo se diferencian ustedes qué es qué?

Respuestas a la pregunta(6)

Su respuesta a la pregunta