You don't have to loop all appointments because AppointmentDataBound is throwing for every one of them. Here is a sample code that will change the appointment color if its attribute is set with particular value:
sender, SchedulerEventArgs e)
e.Appointment.BackColor = System.Drawing.Color.Red;
Hope this will be helpful.
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed