In a large company, I'd never put out all the food at once. I've seen enough, and read enough stories here on Ehell, to know that there are people who take advantage of free food. They take more than they can eat, they take some for their next meal, they take some for their family. And the people who arrive last get nothing.
With pizza, I wouldn't have someone serving it, but I'd put out a certain number of pizzas and hold the rest back, replenishing the supply as people take the pizza. That would help to ensure that someone who can't get to the pizza right away has a chance of getting a slice or two, and not just the "reject" pizza that has toppings no one wanted. And many people tend to base the amount they take on how much food is there. They see 50 pizzas? They might take more slices than if 10 pizzas are spread out on the table.
And I'd have no problem if there was someone in the room reminding people that they were limited to a certain number of slices, in an effort to make sure that everyone got some pizza.
I've brought in 2 dozen doughnuts for an office with 18 people, more than enough for everybody to have one doughnut, and have seen someone walk off with a box of a dozen doughnuts. And yes, I stopped her.