(
Android 
Read 
Only 
Memory)  A file containing the executable instructions (a system image) of an Android OS and affiliated apps.  The "stock ROM" comes installed on the phone or tablet, while a "custom ROM" comes from a third party.  The custom ROM is either a uniquely modified OS, such as Cyanogen, or a stock version made available for older devices or for new devices before the vendor release date.  See 
CyanogenMod.
Flashing the ROM
Flashing a ROM means installing the system image into the device's internal flash memory.  Flash memory holds the Android's firmware, the same as most portable devices with an embedded OS.
A Rather Misleading Name
The Android ROM is actually flash memory, not ROM.  A ROM is read-only-memory that once programmed is unalterable.  See 
ROM, 
flash memory, 
Android recovery image and 
Android rooting.