Сборщик мусора должен со временем включиться и освободить память. Это не основано на времени, а скорее на памяти. Таким образом, вы должны иметь возможность моделировать более длительные периоды, просто увеличивая частоту вашего опроса. Если GC не восстанавливает память, значит, где-то есть утечка. Также не забывайте, что соединения с базой данных, как правило, используют пул соединений, что означает, что даже если вы закончили с соединением, пул активных соединений все еще ждет.
Но это нормально, когда память не восстанавливается мгновенно. Не поддавайтесь желанию использовать GC.Collect, если только он не предназначен для отладки. Это может повлиять на эффективность работы сборщика мусора.