No són la misma cosa.
Un error es el comportamiento involuntario de una pieza de software: el software no hace lo que se supone que debe hacer. Los errores pueden vivir en todos los niveles de desarrollo de software, desde errores tipográficos simples hasta errores lógicos y especificaciones funcionales inadecuadas.
Una excepción , por el contrario, puede referirse a una condición inusual de un programa, que se desvía del funcionamiento normal o, más específicamente, a la construcción del lenguaje utilizada para señalar y manejar tales condiciones.
El hecho de que ocurra una excepción puede ser un signo de error, pero a menudo no lo es. Por ejemplo, una aplicación que debe descargar un documento de una URL y procesarla localmente puede generar una excepción cuando el servidor remoto está inactivo: la aplicación se desvía del funcionamiento normal (no puede descargar y procesar el documento), pero si maneja la excepción correctamente y se recupera, entonces no hay error.
Por el contrario, la presencia de un error no necesariamente se manifiesta como una excepción. Una aplicación puede descartar silenciosamente los datos que ingrese en lugar de almacenarlos en su base de datos; no se produce ninguna excepción, pero sigue siendo un error.