特殊な文字があるutf-8のwebページのソースをファイルに保存したいのですが
WebClientでutf-8を指定してダウンロードしてStreamWriterで、書き込み時にutf-8を指定して
書き込んでいるのですが、保存されたテキストを見るとその文字が?になってしまっています。

teraPadというエンコードを指定できるテキストエディタでutf-8を指定して確認しているのですが
元の文字は消えてしまっているようです。
WebClientでダウンロードした直後にString変数に入れて、デバッグを一時停止して
カーソルを当てるとその特殊文字は正常に表示できているのですが、
そのままConsole.WriteLineに出力すると?になってしまっています。

ブラウザのソース表示から直接TeraPadでソースを開いても?になってしまいます。

これはどのようにして保存したら正しく保存できるでしょうか?
ちなみに文字は〜という文字の波を上下に反転したような形の文字です。
よろしくおねがいします。