Plusieurs ensembles de résultats fait référence à une requête unique ou à un lot de requêtes renvoyant plusieurs ensembles de lignes. Ces résultats sont accessibles via le seul et unique DataReader pour cette connexion.
Ce que vous demandez est quelque chose de tout à fait différent. Vous devez pouvoir effectuer plusieurs requêtes simultanées sur une seule connexion. Afaik .NET ne prend pas en charge cela, pas pour SQL Server ou tout autre pilote.
Partager une connexion entre plusieurs threads est une mauvaise idée et totalement inutile. .NET utilisera un pool de connexions pour limiter le nombre total de connexions. Il est donc parfaitement sûr d'obtenir une nouvelle connexion pour chaque (ensemble de) requêtes que vous souhaitez exécuter. Limitez la portée d'une connexion à un thread et votre problème disparaîtra.