An error that causes a program to abort, regardless of the programming language.

A fatal error causes a program to finish execution, usually returning back to the operating system. This broad category also covers errors that are not thrown as exceptions.