A partir de MongoDB v 3.2, puede usar bitsAllSet o bitsAnySet dependiendo de lo que estés buscando.
Entonces, con el controlador C# MongoDB:
//Check single Flag as OP
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag));
//Check all multiple Flags
collection.Find(Builders<MyEntity>.Filter.BitsAllSet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
//Check any multiple Flag
collection.Find(Builders<MyEntity>.Filter.BitsAnySet(myEntity => myEntity.Flags, (long) MyFlags.AFlag | MyFlags.BFlag));
Nota :Hay un problema abierto para usar índices en operaciones Bitwise. En MongoDB 4.2 todavía no los usan, así que tenga en cuenta si planea usarlos masivamente (lo hicimos y tuvimos que refactorizar todo después).