The most important thing to understand is that Dataverse solutions are managed in a series of "Layers."
Managed layers are discrete, individually managed customization definitions which are sorted in order of when they were installed in the environment, with the oldest being at the "bottom." This category includes the "base" layer that is preinstalled in Dataverse (i.e. the Account Table OOB). Any Managed Solutions that are installed in that environment afterwards are kept as individually managed definitions, and when you request any one resource (for example, a form) that has definitions in more than one of these layers the definition you get is built by evaluating each, in order. So, say you open an Account form in an env that has one managed layer that added a new field to it, "myfield." Dataverse first evaluates the oldest layer (base) then evaluates the higher layer and returns to you a form that is based on "base" but also includes "myfield".
OK, so that's managed layers, but that isn't the whole story. Unmanaged customizations exist in another layer, on top of all those managed layers. However, Unmanaged customizations don't store as individual definitions in the database: there is ONLY ONE unmanaged layer, no matter how many unmanaged solutions you might have in an environment. So, if you have the Account form added to two different unmanaged solutions and you add "myfield2" to the account form in one solution, it will also be reflected in the other. While Managed solutions are indeed distinct layers, Unmanaged Solutions are really just views into one single layer.
So what does this all mean for your question? Well, because managed layers are distinct and unmanaged layers are not, complex environment topographies where one app wants a modification and another doesn't are totally achievable in a single environment or by using multiple production environments, and you can effectively control what customizations surface by controlling what was the last managed solution in, what is in the unmanaged layer, and how you are controlling change in your lower environments.
Here are a few links that might help you to get a clearer handle on Solutions and environment management strategies:
Solutions:
Solution concepts - Power Platform | Microsoft Learn
Organize your solutions (Microsoft Dataverse) - Power Platform | Microsoft Learn
Move from unmanaged to managed solutions to support healthy ALM with Power Apps - Power Platform | Microsoft Learn
Environment Strategy:
ALM environment strategy considerations - Power Platform | Microsoft Learn
Establishing an environment strategy - Microsoft Power Platform - Power Platform | Microsoft Learn
Defining a Power Platform Environment Strategy | Microsoft Learn