Асинхронные веб-запросы с использованием C #

Привет у меня есть функция, которая передает URL Get параметры в php-файл на веб-сервере и ждет ответа от файла (обычно занимает 10-20 секунд). Я хочу поместить это в цикл, потому что я должен отправить эти запросы Get примерно в 5 разных php-файлов одновременно, но когда я пытаюсь добавить его в цикл, функция заставляет цикл ждать, пока файл не вернет ответ, прежде чем он пойдет На следующем.

    public string HttpGet(string URI, string Parameters)
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(URI + Parameters);

        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        StreamReader resStream = new StreamReader(response.GetResponseStream());
          return resStream.ReadToEnd().Trim();
    }

    private void SendCommand()
    {
        for( int i = 0; i <= 4; i++)
        {
            AddRTB(HttpGet(url, paramater));
        }
    }

Есть ли способ, которым я мог бы отправить все 5 запросов одновременно, не дожидаясь завершения предыдущего? (Я думал о продвижении по ниткам, но увы, я никогда не трогал это раньше, я не знаю, с чего начать.)

Ответы на вопрос(4)

Ваш ответ на вопрос