No steam pans. We usually just use large foil pans or heavy cookie sheets.
The key is to keep good flow so plates get filled quickly and efficiently before stuff gets cold and so people can eat and socialize together, not 30 minutes apart. For us, a "large" crowd is usually in the 100-150 range which is very manageable. Using folding tables to setup 2x two sided buffet lines can move a crowd that size quickly and only requires two trays of each item to have 4 people serve themselves at a time. A smaller crowd of say 40-80 can be served with a single two sided line, below 40 we do a single line around a large island. For larger crowds I would just scale up the number of serving lines.
Order is important. I just ate at a buffet where the toppings were before the things they went on, creating chaos. If doing sandwiches, I go buns then meat then toppings so people can assemble with an open bun on an empty plate, and then sides after they free up space by putting the top on.
By serving efficiently, we don't worry about keeping things hot or cold. Everyone gets through the line in 5-10 minutes, eats and has time to grab seconds, and as mentioned above, we are cleaning up and putting food away in about 45 minutes.