訳:Sometimes we eat fish for dinner.
At dinner means specific timing to eat something for dinner, it isn't mentioned anything which are prepared dishes and food on the table. For dinner means something what is prepared to be eaten or drunk on the table at dinner. So I would say in the case, only "for dinner" should be accepted. However it's quite difficult to use especially in Japanese due to it's structure. Japanese do not care the differences and it looks the both answers are correct. Regarding "the dinner". If you want to say something about the specific dinner, you should use "THE" to dinner. Usually "THE" hasn't been useing with "Breakfast", "Lunch" or "Dinner" except for special cases.