I used to ride a 56, because most bike shops will go by height, and based on that, I need a 56. However, when I'd do 60km plus rides, my neck and shoulders would bother me, so when I bought my Cervelo RS, I got a pro fit done at tri-it. Based on my flexibility, or lack there of, leg length, torso, etc, I needed a 54 RS. Now I can go well beyond 60km without issue.
Pro-fits can be pricey. Check out
www.competitivecyclist.com. They have a fit calculator, and guidelines for three styles of fit. You just need to pick out a bike, and then it offers the fit calculator.