It is usually best to marinate fish for 30 minutes to 1 hour for best results. Sometimes up to 4 hours is ok if the marinade is not too acidic (ie one with vinegar or lemon juice).  Fish marinated too long can cause it to become mushy.