You should consider using Operating System file search with contents. Take a look at Microsoft Windows Search 3.x SDK
Or you can utilize PLINQ for searching in array of files. See this link:
File Content and Directory Search using Directory.GetFiles and PLINQ