Diagrams alone are not always helpful. For example, the use case diagram can't convey business rules in detail. The class diagram may be very useful since you may be able to generate class code and DLLs from it.

I find these diagrams the most useful:

* Use Case Diagram
* Class Diagrams
* Activity Diagram
* Sequence Diagram

There are so many useful resources, but check these:

* [UML End-to-End From Use Case to Sequence Diagram - Essential Software Tutorial][4] on YouTube
* "[Practical UML: A Hands-On Introduction for Developers][1]" by Randy Miller
* Sparx System's [UML Tutorial][2]
* OMG's [UML.org][3]


  [1]: http://edn.embarcadero.com/article/31863
  [2]: http://www.sparxsystems.com/uml-tutorial.html
  [3]: http://www.uml.org/
  [4]: http://www.youtube.com/watch?v=RMuMz5hQMf4&feature=watch_response