It will really depend on what meat you'll be braaing. For a steak, I'd ideally prepare the meat ahead by aging it, then rub it in salt, pepper, fresh thyme and garlic and butter - and sometimes I cut slashes in the meat and insert peppercorns and garlic and butter in for penetration. Then you want it to cook on a high heat for a short amount of time, and the timing is crucial so you need to stand guard and watch the interior of the steak.
For ribs, I normally make a coating from ingredients such as balsamic, honey, soy, mustard, paprika and put it into a ziploc bag with the ribs and slather it all round - but I don't bother marinating it for long because I can't tell the difference.
For chicken it's a different matter, I'd say you should brine it for a long while in a measure of salt water to keep it moist on the fire, then also marinade it for several hours - something like
this recipe for half an hour or so. Again, I'd experiment with coatings but you're aiming to get a crispy skin outside and very moist meat inside, so just immediately as the meat has gone from raw to cooked in the centre take it off because it will dry out very fast.
For fish, you want simple light tasting ingredients with fresh herbs like lemon, butter, garlic, dill, tarragon, parsley, basil, mustard seeds, cracked pepper, lime, sesame, soy. Again a short marinade is good, because flavours penetrate easily and can 'turn' the fish after a while. I almost don't marinade fish at all actually, just slather it over and cook, and rather under-do the sauce than overdo it because fish is sensitive to overpowering and good fish is immensely satisfying on its own.