About the first question, the answer is it will work. We support both the CM3 and CM3L modules.
About which one is recommended, it depends on how comfortable you are with 4GB of eMMC. If you plan to run containers requiring >2GB of storage, you wouldn't be able to pull one container while running the other one. Meaning, you would need to rely on the delete-then-download update strategy which will involve a bit of downtime during updates.
On the other end, using the CM3L means that you have to use SD cards and you won't be restricted by size like with the eMMC but performance will likely be somewhat worse and they tend to be a bit less reliable in the long term.
TL;DR: If you can work with 4GB you should go for the eMMC, otherwise you'll need to rely on CM3L which is a bit worse but still pretty acceptable.