The first thing I normally do is a sketch, in this case of the dream I had. It doesn’t need to be very pretty, it’s just to organize things around, like where are the lights, which elements will be there, etc.
After the sketch, and sometimes before, I look for references to have a better understanding of how those things I imagine look in detail, as well as to get a better idea of the light and mood I want to portrait.
My phone and my camera come very handy in order to get assets I can use for textures, photo bashing, etc. I use sometimes royalty free images or those that are labeled for reuse.
A very effective way to make my composition make sense in terms of perspective, lighting, proportions, etc. is to make a very simple 3D model of the scene. In order to speed up the process, I avoid adding textures, or worrying too much about the final look. This will be done later.
Using the 3D as the starting point, I literally paint on top, add textures and do photo bashing to bring the right look across.
After a good amount of hours a final render is made. The challeging part is to make it all look in the same space, no matter if its painted, part of a photo, or a 3D element.