First off, don't create new timers and don't start / stop the existing one. If you are going to use a timer then set it for a suitable interval (a second perhaps) and leave it running.
Then, in the Tick event compare the Alarm time against teh current time:
DateTime now = DateTime.Now;
...
if (alarmTime >= now)
{
...
}
You can keep a list of alarms, and process them all with a single timer that way.
If you want to update a label to show the current time, you just add the appropriate code to teh same Tick handler:
label1.Text = now.ToString("hh");
label2.Text = now.ToString("mm");
label3.Text = now.ToString("ss");