There are a lot of similarities and a couple of differences. The main difference between sharing a model-driven app and canvas apps is in how security roles are assigned. The other relates to Dataverse teams.
Canvas Apps
Canvas apps allow individual assignment of roles.
When a Canvas app is shared, users can be assigned any security role in an environment, including the System Administrator and System Customizer roles.
Model-Driven Apps
Model-driven apps are more integrated into the Dynamics 365 environment and rely on predefined security roles and access levels.
This requires that security roles be first assigned to a model-driven app. Then, when the app is shared with users, one or more of the roles assigned to the app can also be assigned to users. Any security roles not assigned to the app aren’t available for sharing with users.
In most other ways, sharing the two types of Power App are the same. They can be shared with security groups and assigned security roles, or the security roles can be pre-assigned to the security group via a Dataverse team. For detailed information on this subject, see my earlier post App Sharing – Power Platform Environments