I think it depends on a few things, namely size of guest list and whether it is a buffet vs plated. I have been to large weddings where the first people at the bufffet are nearly done eating by the time that the last people getto the buffet.
It took about 1.5 hours for 45 guests, plated dinner. But we had an appetizer, salad, soup, a choice of entree (so that took some time to take orders). Also, we specifically told them we didn't want to rush the meal and to make sure everyone's glass was full. We also did toasts in between, although they were very short.
It depends on so many things...We had 100 guests for a 3 course (not including cake) plated dinner. The Mr. and I only ate our 2 courses because we were stuffed and did our walking around/greeting guests while they were finishing salad and beginning entrees. From the time we were introduced, had our first dance until all dinner plates were clear was about an hour and 15/30 minutes.
100 guests, grill out where you walk up to grill and pick meats then build your own plate with sides took 1 hour to 1.5 hours for everyone to filter through the line, sit and eat/chat. We did no speeches or anything just sit where you want, eat as much as you want.
I agree with 1.5 hours I believe that is the average time. I'm looking @ 150-100ppl. When I finish my food, I don't like sitting around. I have personal songs I want the dj to play that represents us, during dinner time. I can get some pictures with the guest done that time too because when its dancing time, I am changing into my second dress pronto!!