Hi,
I believe, most questions are answered in the device manual, some details are probably not clear at first sight, particularly the prerequisites for using memory initialization.
In a short:
1. You need dual image if you want to use remote-update feature with factory and application configuration.
2. I'd always use compression, the impact on image size is however limited.
3. "Memory initialization" feature in the discussed context refers to block RAM inialized during configuration. The feature isn't available with dual-image configuration and not with "compact" (SC) MAX 10 device types.
The problem is that IP relying on initialized RAM can be only used (at least with all features) if memory initialization is available. This can be a reason not to use MAX 10 for your design.
With SC types or dual-image configuration, inferred ROM can be used to some extent, but it's translated to combinational logic. Initializing RAM out of UFM data would be possible in principle, but it has to be designed manually and can't be inferred from HDL description.