Assuming that you can have not only (UTC), but (UTC+4), (UTC-5) and alike suffixes, I suggest escaping (UTC and ):
  string stringToFormat = "Fri, 30 Jul 2021 11:57:58 (UTC)";
  ...
  DateTime myDateTime = DateTime.ParseExact(
    stringToFormat, 
    new string[] { 
      "ddd, d MMM yyyy H:m:s '(UTC)'",
      "ddd, d MMM yyyy H:m:s '(UTC'z')'",
    },
    CultureInfo.GetCultureInfo("en-US"),
    DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal);
Demo:
  DateTime demo(string text) => DateTime.ParseExact(
    text, 
    new string[] { 
      "ddd, d MMM yyyy H:m:s '(UTC)'",
      "ddd, d MMM yyyy H:m:s '(UTC'z')'",
    },
    CultureInfo.GetCultureInfo("en-US"),
    DateTimeStyles.AdjustToUniversal | DateTimeStyles.AssumeUniversal);
  string[] tests = new string[] {
    "Fri, 30 Jul 2021 11:57:58 (UTC)",
    "Fri, 30 Jul 2021 11:57:58 (UTC-1)",
    "Fri, 30 Jul 2021 11:57:58 (UTC+1)",
    "Fri, 30 Jul 2021 11:57:58 (UTC-14)",
  };
  string report = string.Join(Environment.NewLine, tests
    .Select(test => $"{test,-40} => {demo(test):dd.MM.yyyy HH:mm:ss}"));
  Console.Write(report);
Outcome:
Fri, 30 Jul 2021 11:57:58 (UTC)          => 30.07.2021 11:57:58
Fri, 30 Jul 2021 11:57:58 (UTC-1)        => 30.07.2021 12:57:58
Fri, 30 Jul 2021 11:57:58 (UTC+1)        => 30.07.2021 10:57:58
Fri, 30 Jul 2021 11:57:58 (UTC-14)       => 31.07.2021 01:57:58