I've used Gnome Planner when I had to do Gantt charts, task enumeration, project timelines, resource allocation and such.
It was plenty for the things I had to do. It offers HTML export and you can print to PDF, of course.
I cannot tell you how it compares to Microsoft Project because I never spent significant time with that. Planner does offer a Microsoft Project XML import, but I have not tried it. I doubt you could use Planner and swap files back and forth with someone using Project.
Of course, if the Gantt chart is your primary objective and you just want to be over-the-top fancy, there is always pgfgantt for LaTeX.
I prefer Planner for our small team. Planner is a project management tool which supports Gantt charts, resource allocation and some degree of integration with other apps.
Its goal is to be an easy-to-use no-nonsense cross-platform project management application. It can store its data in either XML files or in a PostgreSQL database. Projects can also be printed to PDF or exported to HTML for easy viewing from any web browser. Included in the HTML document is a simplified Gantt chart, task list (with %complete, start, end, work, and resource columns), and a resource allocation table. It is an excellent way to give people easy access to project status information. Planner page