I haven't seen anyone mention this, so I will. Make sure your monitor is calibrated using a calibration tool such as Xrite or Spyder. Otherwise, the colors you see on your monitor may not be accurate to start with. As mentioned above, get a printer profile from your print lab that you can use in photoshop so you can preview how your print will look. Not all colors can be accurately reproduced on different printer/paper combinations (I find this especially true for very saturated reds, yellows and oranges). Then you can make adjustments to your file to compensate for the difference you see, comparing your original file with the view you see using the profile.
I have used WHCC who I find to be very good. My colors match pretty well. Intitally my prints were coming out too dark, and I found out it was due to the fact that my monitor is too bright. So I began decreasing the brightness of the monitor to make brightness adjustments to the files I was preparing for print. (this applied to photos on luster or glossy paper. Things may be different if you are printing giclees on fine art paper - I haven't tried it)