Prefabs are GameObjects with customized properties and components (for example, a light with a script added to it to make it blink) that you can store in your Project window so that you can reuse them in different scenes/moments. They can be created or copied at any time (including runtime) and, whenever you alter a property of the original prefab, unless otherwise defined, all its instances will be updated automatically.