It's always better to use a reputable travel agent, preferably a cruise specialist. Their services are free and can provide information on all the cruise lines, not just one. Plus, if you have any problems and booked with the cruise line, who do you think they represent. An agent represents you and should you have any problems, they have contacts not available to you. And lastly, while their prices are going to be exactly the same as what the cruise line charges, often they have specials not being offered by the cruise line that can get you a better rate.