Apply from vs parent-child

What are the advantages of using apply from vs parent-child? Which is recommended? Can they both be used together to enable top down as well as individual child project builds?

The two are orthogonal concepts:

Script plugins (“apply from”) allow you to extract pieces of build logic that belong together, e.g. all the logic for a certain tool you are using. They are a first step on the way to a fully-fledged plugin.

Cross-configuration (“parent-child”) allows you to avoid repeating the same configuration (including plugin applications) in all your child projects.

If you have a multi-project-build, then the child projects are never built in isolation, but always in the context of their build. If you want more separation than that, you can use composite builds.

Cheers,
Stefan