Одним C# точно не обойтись. Если посмотреть на OpenVPN, то там драйвер написан, перехватывающий весь траффик и перенаправляющий его на VPN-сервер. Если надо перехватить трафик с конкретного браузера, а не со всех приложений сразу, то можно просто указать в настройках браузера нужный прокси-сервер.