I use lucidchart.com and am quite happy with it, particularly with the free Pro account for students. I also like the cloud nature of it, as I'm on various computers and operating systems all the time.
If you're looking for a UML tool for designing (rather than generating structure from the code), I'd recommend Microsoft Visio - I used it a couple of times for my university projects and it did the job well - clean, fast and easy.
As for a free, open source solution, I think Dia would do the trick as well.
I like the UML modelling tools in Visual Studio 2010 the best app I've used. Close second is Borland Together.
What I like about Visual Studio are the keyboard bindings and the total lack of modal dialogs. Dia and Visio can do the job, but they require you to right-click + properties, which pops a modal dialog. In Together (I don't know if you can still get it, I've used 2008) and VS you've got properties editor, a modeless window that you can attach anywhere. In VS, try enter, it lets you add sub-elements right on the spot.
Another nice thing about VS is that it is free for a great deal of people, and they don't realise it. Students have DreamSpark/MSDN-AA, start-ups have BizSpark, and golden partners too.
I've heard lots of people praise Rational and say that everything else is amateur-ish. I've never used it, so I can't confirm. Since you are just starting out, you can give it a try - it seems there is a free version.