I don't know what is causing the long delays with meal service in the dining room, but I can tell you that it's a fleet-wide problem. I was on the Veendam back in 2007 and some of our meals were taking close to three hours. I thought it was because we were seated at a large table, where some people ordered from every course offered, while others only ordered from a few. Of course, we had to wait while others got through their courses before we would be served our entrees. Everyone at the table is kept on the same course at the same time.
However, I was on the Statendam this past September/October and noticed some of the same problem there ... and I experienced it in both fixed and "As You Wish" flexible dining. Even when we got a table for two, there were often delays before the entree was served. It would seem that the pre-entree courses came in pretty rapid succession, but then there would be a "lull" before the entree was served. I have no idea why. It did not seem to be a problem with the servers. They seemed plentiful and ready and willing to serve the next course. I think the problem is occurring in the galley. Maybe not enough cooks on duty? Maybe some sort of bottleneck?
Regardless, I agree with you. No meal should take in excess of two hours. I do know that some people enjoy lingering over a meal, but I think there are also plenty who would like to eat and then go on to do other things with their evening. We got to the point where if we had anything special we wanted to do that evening, like see a show or meet friends in one of the lounges, we would automatically opt to eat in the Lido. It was the only way we could have any degree of control over how long the meal would take.
I've almost become a Lido fanatic after this last cruise of 35 days. I just found that dinner there was much more pleasant than it was in the dining room, and service almost as attentive. You just go through the "buffet" line once ... get everything except your main course ... and then in most cases, that main course is delivered by a steward to your table. The room is set up nicely for dinner ... with white tablecloths and flickering candles on the tables. Stewards are available to get you beverage refills and the selection and quality of the food is pretty much the same as what you would be getting in the dining room that night anyway.
My advice would be to only go to the dining room when you have all the time in the world that evening and maybe just want to enjoy a leisurely meal at a slow pace. Otherwise, make the Lido your venue of choice. You'll enjoy your dinners much more that way.
Blue skies ...