I prefer to spend less time in 3d-software and more in postproduction. For me Photoshop is the best render engine.
Start with a small scene and shoot it like a photographer, remember the composition - it considerably changes the image perception.
Photoimages serve as the basement for fixing materials and lights. Results in 3d strongly depend on the choice of references.
Light is the most important in CG, above modeling and texturing; it gives the render right emotions, even without textures.
You need to spend time analyzing the real world to be able to imitate it. Inspiration comes from the outside.
To obtain photorealism, remember: everything in this world has a certain imperfection: color, reflection, geometry, placement or all of them.
Due to short deadlines I prefer adding details in postproduction, I find it very fun. I really love photoshop integration.
If your model is done well, it's easy to modify: you can be sure, your customer will ask fast modifications.
There's always a lot to improve. But in each project you need to find the balance between "quickly" and "qualitatively".
Anyone can learn the software, but to be outstanding 3d-artist, I suggest to gain some sort of visual communication literacy.
Feed your mind with nice real world references, understand color theory and keep all objects in your scene in scale.
With time we'll get even closer to reality, it will be hard to distinguish a virtual image from a photograph.