I am developing in WPF and wish my DataGrid to instantly refresh when there's a general change in the DB, and the other way around.

Today I am using Timers and straightforward Chooses to do the updates. Can there be something insInternet that delivers that functionality ?

Regrettably Database are "pull" data sources and does not provide any "Push" data model to create your code inform concerning the changes, before you implement pseudo push that is essentially that which you have pointed out i.e timers polling the database. Other option might be to implement a Trigger which calls a CLR SP which SP has the capacity to send the information for your code through remoting or something like that like this.

One idea is by using MSMQ. This way multiple client programs could possibly get be informed whenever something changes. You have to give a trigger inside your SQL database (or even the application that's modifying the database) to inform the content queue whenever new things is added (see: Posting Message to MSMQ through SQL Server). The consumer application would then have to sign up for the content Queue and would act on any new messages being published there.

There's also SQL Server Service Broker but I'm not really acquainted with that, but may be worth looking into.

use SQL Server Notification Services. i did not utilize it before but u can perform that utilizing it