I just know old tools such as PowerAMC or Rational Rose, are there always adapted tools ?
The objective is to create some base UML schema : use case, class diagram, séquence diagram, composant diagram, deployement diagram. Be able to generate code and reverse engineering would be a must.
Consider Microsoft Visual Studio 2010 Visualization and Modeling Feature Pack
http://msdn.microsoft.com/en-us/library/dd460723.aspx