How to fix special characters in node titles? When I imported content from my legacy system using the migrate module some special characters didn't get imported correctly.

For example the " character got changed to &amp;#34;  and is showing as such in the node title.
Is there an easy option fix that when displaying or do I have to replace it at the database level?
Drupal does check_plain on titles which removes all html and does some conversion of chars (&amp; -&gt; &amp;amp;). Depending on how the migration went, that could be part of the problem (escaping escaped content). But it's hard to say what the problem is without knowing what you actually got in the database.

Drupal uses the philosophy to store everything raw in the database, and escape it on output. If the legacy system did it differently, you could have the data stored differently than what Drupal expects, and would then need to fix it at the database layer.