Не знам как работи обвързването на MongoDB C#, но опишете как обикновено работи:
Когато използвате IQueryable
изгражда се изразно дърво, след което се превежда във формат, който базата данни може да разбере и след това се изпълнява в сървъра на базата данни.
Това обикновено има малки допълнителни разходи (конструиране на изразно дърво и превеждане) в сравнение с директното писане на заявки във формата, който базата данни разбира.
С IEnumerable
се използват делегати вместо изрази. Той трябва да премине през целия набор от данни и след това да филтрира с помощта на Link-To-Objects. Това е много по-бавно.