Yes, the aggregation framework will help you do this. Something like this query should work:
db.collection.aggregate(
{ $unwind : "$list" }, // deconstruct the array
{ $match : { list : { $gt : 100 } } }, // match based on your condition
{ $group : { _id : "$_id", list : { $push : "$list" } } } // rebuild array
)
You'll have to change this query based on your exact data structure, but that's the general idea.