@Drrickryp your solution is awesome but I think the question is regarding model driven apps.
There are two ways to do that in a model driven app @Drrickryp . Real time workflow or Power Automate.
for Power automate Flow:
create a solution
add a flow to the solution
choose common data service current environment connector
select for trigger when a record is created, updated, or deleted. set it to the entity 1 and choose the when a record is created option.
next step get records--get the record that triggered the flow. You want to do this because on create doesn't return all of the fields..
then add a create step choose entity 2 for the entity type, then map the desired fields.
populate the lookup for entity 1 on entity 2, but be sure you use the right format. https://crmtipoftheday.com/1311/use-entity-name-in-flow-lookups/
for real time workflow, you will need to click the gear and go to advanced settings-->processes.
Create a workflow and uncheck the run in background option.
Choose entity 1 as the entity type.
trigger to run on organization scope and run when record is created
https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/customize/configure-workflow-steps#:~:text=Table%201%20%20%20%20Action%20%20,to%20create%20...%20%203%20more%20rows%20
I prefer flow, unless it needs to happen immediately. then use real time workflow. don't use background workflow, it will go away in the future.
@MohammedWard if this answers your question please mark it as a solution.