Fresh, not frozen is the way to go for best results. Chicken with skin, ideally should be marinated two or more hours, but not more than 24 hours. Honestly, it's more of a personal preference. If you are short on time, an hour is great, but several hours of marinating is better.