Hi.. User Ajax Timer do the same.. You can use UpdatePanel to avoid page refresh.
Ex:
Html part..
<asp:scriptmanager runat="server" id="ScriptManager1" xmlns:asp="#unknown" />
<asp:timer id="Timer1" runat="server" interval="50000" ontick="Timer1_Tick" xmlns:asp="#unknown">
</asp:timer>
<asp:updatepanel id="UpdatePanel1" runat="server" xmlns:asp="#unknown">
<triggers>
<asp:asyncpostbacktrigger controlid="Timer1" eventname="Tick" />
</triggers>
<contenttemplate>
// place your gridview here to avoid page refresh for regular interval of 5 minutes
</contenttemplate>
</asp:updatepanel>
Interval="50000" is equals to 5 minutes..
Code behind..
protected void Timer1_Tick(object sender, EventArgs e)
{
}