Best method to handle %20 in tag URLs with multiple words
Update.

After looking at the tag model a little more closely, it looks like tags have both a title and slug — so if you use the slug to construct your url then you shouldn't have that problem.

For your tag index:

&lt;ul&gt;
    {% for tag in craft.tags.order('title') %}
        &lt;li&gt;&lt;a href="{{ siteUrl }}tags/{{ tag.slug }}"&gt;{{ tag.title }}&lt;/a&gt;&lt;/li&gt;
    {% endfor %}
&lt;/ul&gt;


In your tag index page (assuming you are using the tag token in your custom route): 

{% set tagEntry = craft.tags.group('myTagGroup').slug(tag).first %}
{% set entries = craft.entries.relatedTo(tagEntry).order('title').limit(null) %}