There are other tools. I've compiled a list, which can be acquired, at this link.
In general, it depends on the situation: the desired implementation language, the complexity of the ontology, requirements, use-cases, support, etc.
A positive thing about Protege is that it is free. A negative thing is that it has a number of limitations, some of which are due to the embedded implementation language of OWL (which is itself quite limited).