Remember there is more than one way of working in 3D software. Every 3D software comes with myriad of tools you can use to tackle a problem. This way you will be able to learn and master different techniques.
Stick to one program. New 3D software emerges very frequently. Deciding which one to learn depends on your needs, or the needs of the client. Some software, such as SketchUp, may have a shorter learning curve than, for example, Maya or 3dsMax, and may still be good enough for your purposes, especially if paired with good rendering software. It is a good idea to stick to one program, at least in the beginning, and master it rather than bounce back and forth between different programs.
Make sure you are on the same page with the client. Avoiding misinterpretation and confusion when discussing details with the client prior to the commencement of the project is very important and will save you time. It should be clear to you what you are expected to do and what the client expects from you. Ask questions, if something is not clear, and ask the client to provide reference images, if possible. It will help you understand the overall atmosphere your client wants you to create. Even if you disagree with your client's choice and desires, try to find a common ground, or explain clearly why something would work better. However, your end goal should be to make your client happy.
Consult with your colleagues. If you have the opportunity to show your work to your colleagues, do it, as it is easier for others who are not as familiar with your project to notice potential mistakes. Sometimes when you spend too much time working on a project, you are so used to seeing it all the time, it is good to have another set of eyes look at it.