I have had two ESCs catch fire. One was the result of a failed ESC, the other was the result of a crash.
A little background -
Each ESC has at least 6 FETs (Field Effect Transistors). And there are three windings in the motor it controls. One end of each motor winding is connected to a common point, while the other end of each winding goes to a pair of FETs in the ESC. 3 windings = 6 FETs. Some ESCs put these FETs in order to handle more current, and I have seen ESCs with as many as 18 FETs, but the principle is the same.
The FETs are used in pairs because one FET pulls one end of a motor winding to the (+) battery terminal, while the other pulls that same end toward the (-) battery terminal. By changing which polarity (+ or -) each of the 3 motor wires is connected to at any time, the motor rotates smoothly. The polarity changes several times each revolution.
If both FETs are ON at the same time, then the battery is shorted through the two FETs - a very bad condition. Fancy control systems have several fail-safe mechanisms to insure that both FETs are never on at the same time.
But the $15 ESCs do no qualify as a "Fancy control system".
If anything goes wrong, the FETs can fail in the "open" condition, or in the "shorted" condition. Failing "open" isn't a huge deal - the ESC simply stops working. Failing in the "short" condition is another matter. If one FET of the pair shorts and the controller (that controls the operation of the FETs) isn't aware of that fact, the other member of the pair turns on. The result is burned wires, or worse - a fire.
I am advocating the EVERY multirotor have a fuse to limit the current during such instances. I have contacted two fuse manufacturers and am trying to convince them to build special fuses - ones that are small, handle large currents and can be installed in-line easily. The ones that are available now (mostly for trucks) are too large and heavy.