Try something like this:
public static async void SendNotificationAsync()
{
NotificationHubClient hub = NotificationHubClient.CreateClientFromConnectionString("<connection string. with full access>", "<hub name>");
var toast = @"<toast><visual><binding template=""Stop using your PC!""><text id=""1"">50 Minutes are over. Have a break.</text></binding></visual></toast>";
await hub.SendWindowsNativeNotificationAsync(toast);
}
And:
//goes somewhere into your initialization part
private Timer timer;
private int time;
timer = new Timer(){Interval = 1000*60};
timer.Tick += new EventHandler(timer_Tick);
void timer_Tick(object sender, EventArgs e)
{
if(time--<=0)
{
timer.Stop();
SendNotificationAsync();
}
else
{
//actually nothing
}
}