两者都是“祝”,但 congratulate 是就一件已经发生了的喜事表示“祝贺”,被祝贺者为直接宾语,喜事前用介词 on:
wish 则是预祝某人将来有好运气,被祝者为间接宾语,放前面,好事为直接宾语,放后面。
英语用法大全包含2228条英语用法指南,基本涵盖了全部常用英文词汇及语法点的翻译及用法,是英语学习的有利工具。