I have no doubt that a long marinade makes a difference for coarsely striated meats like beef, pork, lamb and some fish. But I've got my doubts that marinating, say, chicken or (peeled) shrimp for several hours makes any substantial improvement over a brief marinating of 15 minutes or so. It doesn't seem to me that the marinade penetrates the meat deeply and rather simply coats it. If you use a dark marinade you can see this with beef, pork and lamb. The longer you marinate, the deeper you can see it penetrate. But not so with chicken and shrimp. I see no evidence a long marinade makes any difference.
Am I wrong?