en meses pasados estuve desarrollando un programa que básicamente lo que hace es hacer búsquedas y comparaciones a la medida de los resultados que blast arroja, después de los tests que le hice funciono muy bien y el tiempo empleado para procesar y buscar la información que se le pide es relativamente buena comparado con el comando grep..ya me daré tiempo para subir a google code los fuentes.
un resumen de lo que sera la API es:
public void Load(string sourcefile)
public void Load(string sourcefile,string comparedfile)
public void Load(string sourcefile,string comparedfile,string outputfile)
public void FindKey()
public void FindElementFromFileFaster(string id,string comparedfile)
public void StopFindKeyProcess()
estos métodos permiten utilizar los archivos que uses para buscar, hacer comparaciones y obtener un resultado, esta pequeñísima api la usa la interfaz que comente hace tiempo http://frenesssi.wordpress.com/2008/06/17/bio-utilities-sharp-v01/