What are the best practices for evaluating model performance, and what works best for you?

When it comes to evaluating models, cross-validation, accuracy, precision, and recall are the terms I keep hearing. But which methods do you rely on most, and how do you know when a model is performing well? Also, does anyone have tips for preventing issues like overfitting and underfitting when building models? I’ve heard cross-validation is key, but I’m wondering what’s worked best for your projects.