La técnica que está utilizando se llama sondeo. Está comprobando si hay nuevos registros, espera un período de tiempo determinado y luego vuelve a comprobar si hay nuevos registros. Una buena manera de responder a los nuevos registros podría ser crear un controlador que maneje la inserción de nuevos registros en la base de datos y obligar a todos los clientes (que actualizan los registros de la base de datos) a usar el controlador para hacerlo. Luego, el controlador puede alertarlo cuando hay un nuevo registro. Para facilitar las alertas del controlador, puede configurar un servicio web donde el controlador puede contactarlo.
Digo que esta "podría" ser una buena manera de hacerlo porque crear un controlador y un servicio web obviamente es un trabajo extra. Sin embargo, haría innecesario el sondeo. Si desea continuar utilizando su técnica de sondeo, puede crear un servicio (productor) que realice el sondeo y llene una cola con los nuevos resultados. Su otro programa (consumidor) puede recuperar elementos de la cola y hacer algo con ellos.