From a purely user perspective -- where this discussion began -- I would distinguish the two as follows:
- People search when they don't know what they are looking for.
- People filter when they know exactly what they're looking for.
The use cases are different. As an example, I may have heard there is this really interesting video on YouTube about a guy reuniting with a lion he raised as a cub. I don't know the exact video I'm looking for (its title, its length, who uploaded it, when it was uploaded, etc.), so I search YouTube with likely keywords like "cub, lion, reunite, owner, man." What comes back is a list of relevant videos based on my keywords. If I re-enter those keywords differently (remove some, add others, change the order), I get a different result set.
In this scenario, I know I'm looking for a video, and I know the subject matter, but I don't know (or perhaps even care about) the specific video that comes back. In fact, I get upwards of 20 videos, all having to do with the topic at hand. But if I know that the video I'm looking for is in black & white, was created on May 10, 2010, and is 2:29 in length, filtering is my best bet. In this case, I want to start with all the videos out there and narrow down the list until I find the exact video I'm looking for.
The point here is the use cases are different, the users' needs are different, and therefore the solutions/features are different. Users may do both (search and filter) but not at the same time. What this means for us as solutions folks is that we shouldn't confuse these scenarios or make the mistake of using "search" and "filter" as synonyms. We should always start with the business need and use cases and let those drive the solutions.