diff --git a/dotnet/src/webdriver/DevTools/v138/V138Network.cs b/dotnet/src/webdriver/DevTools/v138/V138Network.cs
index 4c6dc50976b81..261a836083c70 100644
--- a/dotnet/src/webdriver/DevTools/v138/V138Network.cs
+++ b/dotnet/src/webdriver/DevTools/v138/V138Network.cs
@@ -192,7 +192,7 @@ public override async Task ContinueRequestWithResponse(HttpRequestData requestDa
         var commandSettings = new FulfillRequestCommandSettings()
         {
             RequestId = requestData.RequestId,
-            ResponseCode = responseData.StatusCode,
+            ResponseCode = responseData.StatusCode ?? throw new ArgumentException("Response data status code cannot be missing", nameof(responseData)),
         };
 
         if (responseData.Headers.Count > 0 || responseData.CookieHeaders.Count > 0)
diff --git a/dotnet/src/webdriver/DevTools/v139/V139Network.cs b/dotnet/src/webdriver/DevTools/v139/V139Network.cs
index 76251ffc92c0c..7100afe42955d 100644
--- a/dotnet/src/webdriver/DevTools/v139/V139Network.cs
+++ b/dotnet/src/webdriver/DevTools/v139/V139Network.cs
@@ -192,7 +192,7 @@ public override async Task ContinueRequestWithResponse(HttpRequestData requestDa
         var commandSettings = new FulfillRequestCommandSettings()
         {
             RequestId = requestData.RequestId,
-            ResponseCode = responseData.StatusCode,
+            ResponseCode = responseData.StatusCode ?? throw new ArgumentException("Response data status code cannot be missing", nameof(responseData)),
         };
 
         if (responseData.Headers.Count > 0 || responseData.CookieHeaders.Count > 0)
diff --git a/dotnet/src/webdriver/DevTools/v140/V140Network.cs b/dotnet/src/webdriver/DevTools/v140/V140Network.cs
index a40d432fcce35..5341510058876 100644
--- a/dotnet/src/webdriver/DevTools/v140/V140Network.cs
+++ b/dotnet/src/webdriver/DevTools/v140/V140Network.cs
@@ -192,7 +192,7 @@ public override async Task ContinueRequestWithResponse(HttpRequestData requestDa
         var commandSettings = new FulfillRequestCommandSettings()
         {
             RequestId = requestData.RequestId,
-            ResponseCode = responseData.StatusCode,
+            ResponseCode = responseData.StatusCode ?? throw new ArgumentException("Response data status code cannot be missing", nameof(responseData)),
         };
 
         if (responseData.Headers.Count > 0 || responseData.CookieHeaders.Count > 0)
@@ -354,7 +354,7 @@ private void OnFetchRequestPaused(object? sender, Fetch.RequestPausedEventArgs e
                 RequestId = e.RequestId,
                 Url = e.Request.Url,
                 ResourceType = e.ResourceType.ToString(),
-                StatusCode = e.ResponseStatusCode.GetValueOrDefault(),
+                StatusCode = e.ResponseStatusCode,
                 ErrorReason = e.ResponseErrorReason?.ToString()
             };
 
diff --git a/dotnet/src/webdriver/HttpResponseData.cs b/dotnet/src/webdriver/HttpResponseData.cs
index 97d82e6b3604a..2870ba77d7caf 100644
--- a/dotnet/src/webdriver/HttpResponseData.cs
+++ b/dotnet/src/webdriver/HttpResponseData.cs
@@ -47,7 +47,7 @@ public HttpResponseData()
     /// 
     /// Gets or sets the numeric status code of the HTTP response.
     /// 
-    public long StatusCode { get; set; }
+    public long? StatusCode { get; set; }
 
     /// 
     /// Gets or sets the body of the HTTP response.
diff --git a/dotnet/src/webdriver/NetworkResponseReceivedEventArgs.cs b/dotnet/src/webdriver/NetworkResponseReceivedEventArgs.cs
index 8b5d618420a43..f733e4918e792 100644
--- a/dotnet/src/webdriver/NetworkResponseReceivedEventArgs.cs
+++ b/dotnet/src/webdriver/NetworkResponseReceivedEventArgs.cs
@@ -59,7 +59,7 @@ public NetworkResponseReceivedEventArgs(HttpResponseData responseData)
     /// 
     /// Gets the HTTP status code of the network response.
     /// 
-    public long ResponseStatusCode { get; }
+    public long? ResponseStatusCode { get; }
 
     /// 
     /// Gets the body of the network response.