It's a valid question that is becoming even harder to answer with the emergence of mobile computing. Here at VDC Research we define it as any non general-purpose + non personal computing machine (desktop PCs, laptops, consumer tablets, and similar). No matter how you say it, you will usually need to qualify exceptions for particular computing form factors or vertical applications, as a single embedded system could be leveraged for potentially multiple applications.
@Max: Very true. Here is the long version of our def:
Embedded System - A specialized or dedicated computer used to control devices (such as automobiles, home and office appliances, handheld units of all kinds, etc.) where the operating system and application functions are often combined in the same program. An embedded system implies a fixed set of functions programmed into a non-volatile memory (ROM, flash memory, etc.) in contrast to a general-purpose computing machine. However, sometimes single board computers and rack-mounted computers are called "embedded computers" if used to control a terminal interface, machine, motor, etc. An embedded device or system may contain more than one operating system and/or processors (microprocessor, microcontroller, etc.). Specifically excluded from this definition are all types of enterprise computing machines deployed as general-purpose computers (i.e., desktop PCs, standard laptop PCs, etc.). VDC's definition of embedded system/device is intended to give a good indication of the potential operating system and run-time software royalty opportunity within the embedded systems market.
How about this? "An embedded system is a product that uses a computer to provide its functionality by running a single program loaded into it by the manufacturer. Even though an embedded system contains a computer, you can't run your own program on it."
Unless your want to hack it, of course... whoops, this is my floor.
I forget who said this: "Designing embedded systems is a profession that's impossible to explain to your mother."