بله. لزومی نداره که حتما در Thread اصلی که فرم رو مدیریت می کنه اجرا بشه، می توانید به تعداد مورد نیازتون Thread بسازید و درخواست ها رو در Thread مجزا ایجاد کنید.
البته اگر هدف تون اینه که دریافت پاسخ در زمینه انجام بشه و در طی مدت زمانی که منتظر دریافت پاسخ ئه بتوانید کارهای دیگری رو انجام بدید، قابلیت هایی مثل HttpWebRequest.BeginGetResponse وجود داره و لزوما نیازی نیست که خودتون Thread مجزا بسازید.