
Are you concerned about model portability, XMI support? ( GenMyModel, Sparx, Visual Paradigm, Altova). Do you want to formalize your modeling through profiles or meta-models? OCL? ( Sparx, RSM, Visual Paradigm). Will you be modeling in the future? (For basic modeling - Community editions of pay products).
Are you modeling or drawing? (Drawing - ArgoUML, free implementations, and Visio). Note: The listed answers are my view as the best even if other products support a given feature or need. Here are the questions that should be answered as each vendor product/solution does some things better than others. Sure, diagrams are important, but really you are creating a model.
A common misunderstanding is that UML is about creating diagrams. The previous posts have too many answers and not enough questions. Some context: Recently for graduate school I researched UML tools for usability and UML comprehension in general for an independent project.