In my opinion the two main principles of this are:
Make sure any meat is well sealed and browned FIRST
Likewise, sweat off any vegetables before adding any 'sauce' - that way they retain their own flavour and don't cook into a mush while you're waiting for them to cook through.
Mostly everything I make follows this order:
1. If you're using any bacon, pancetta, or chorizo, saute this first, gently, to allow it to release its fat and flavour into the pan. You can either take it out at that point to be added back later, or leave it where it is.
2. Then add any meat you're using - chicken, beef, etc - and allow that to brown thoroughly. It might be that you have to do this in batches, in which case I'd take out the bacon/pancetta/chorizo first, too.
3. Onions next, and THEN garlic - not at once because the flavours fight as they cook. Let them sweat down gently until tender because they take the longest. If things are sticking add a little splash of water.
4. Add the rest of the vegetables at this point and with the lid on allow them to cook together and soften before adding seasoning, spices, stock, etc.