workaround C# commandlineparser bug
diff --git a/tools/run_tests/run_xds_tests.py b/tools/run_tests/run_xds_tests.py
index 6908067..d03a7b4 100755
--- a/tools/run_tests/run_xds_tests.py
+++ b/tools/run_tests/run_xds_tests.py
@@ -1715,7 +1715,12 @@
                 metadata_to_send = '--metadata="EmptyCall:{key}:{value}"'.format(
                     key=_TEST_METADATA_KEY, value=_TEST_METADATA_VALUE)
             else:
-                metadata_to_send = '--metadata=""'
+                # Setting the arg explicitly to empty with '--metadata=""'
+                # makes C# client fail
+                # (see https://github.com/commandlineparser/commandline/issues/412),
+                # so instead we just rely on clients using the default when
+                # metadata arg is not specified.
+                metadata_to_send = ''
 
             if test_case in _TESTS_TO_FAIL_ON_RPC_FAILURE:
                 fail_on_failed_rpc = '--fail_on_failed_rpc=true'