複数の結果セット 複数の行セットを返す単一のクエリまたはクエリバッチを指します。これらの結果には、その接続の唯一のDataReaderを介してアクセスします。
あなたが求めているのは、まったく異なるものです。単一の接続に対して複数の同時クエリを実行する機能が必要です。 Afaik .NETは、SQL Serverやその他のドライバーではなく、これをサポートしていません。
複数のスレッド間で接続を共有することは悪い考えであり、まったく不要です。 .NETは接続プールを使用して接続の総数を制限するため、実行するクエリ(のセット)ごとに新しい接続を取得するのは完全に安全です。スレッドへの接続の範囲を制限すると、問題は解決します。