I need to make some UML diagrams. What is the best alternative on both Windows and OS X?
Not sure about OSX, but Dia is available for Windows and Linux. I would assume it's also on OSX.
On Windows: NClass works with C# and Java for code Generation. Used it briefly and seemed pretty good
Asciio, written in Perl, is cross platform :P
http://perlbuzz.com/2008/04/asciio-lets-you-create-ascii-charts-graphically.html
I've used Smartdraw in the past, and found it a nice tool for drawing diagrams and all sorts of stuff. Only available for Windows though..
UMLet is a pretty good free UML tool. It runs on any machine that has Java 1.6, so platforms shouldn't be a problem.
I'll second a vote for Visual Paradigm, especially its Community Edition which is great for OS projects.
That, said I've recently fallen in love with Enterprise Architect by Sparxsystems. If you don't mind the $200 price tag (or can get the boss to pony up the dough), you'll be super happy with it, too.
[Edit: I just noticed the OSX requirement. It should run via CrossOver, if you have to run it on OSX]
ArgoUML and StarUML are both pretty decent. I have used the code generation function of StarUML to get projects going in the past and think the interface is pretty easy to use.
I also just noticed the part of your question about Mac OS X. StarUML is only for Windows, but ArgoUML is written in Java, which means it should work for both operating systems.
Eclipse + UML2 + UML2 Tools
If you already develop in the Eclipse environment, these work well.
I concur with OmniGraffle on OS X. The reason I like it, apart from making good-looking diagrams, is that it doesn't impose the UML constraints on the diagram. I've used Enterprise Architect (from Sparx, Windows-only) and sometimes its validation of UML rules gets in the way of the primary purpose of the diagrams, which is to convey what I mean to the readers.
You can review the thread below as it provides a many ideas and is a similar question.
Papyrus UML is a rather complete UML tool written as a Eclipse plugins.
If you can afford you can try Rational Software Architect. Also there is another tool called Sequence Diagram Editor which you can use to create Sequence Diagrams
R. Reverse Java
If you'd like to focus on building you model and not manipulating objects on diagram, you must try Red Koda Community. Check the one minute sequence diagram video, you can see how easy and fast you can use it with the aid of short cut keys.