PnP Core is a library that sits on top of Microsoft Graph, the SharePoint REST API, and CSOM. It provides a unified object model for working with SharePoint Online and Teams which is agnostic to the underlying APIs being called.
So, the developers of the API have figured out which of these APIs can perform which set of operations so that you don't have to. It's my understanding that the team working on PnP Core try to implement each operation using Microsoft Graph first, then they fall back to the SharePoint REST API, then the fallback to CSOM.
The benefit of the abstraction layer is that as new capabilities are added to Microsoft Graph, the PnP Core team can switch out the internal implementation of one or more operations without affecting consumers of PnP Core.
Getting back to your original question, I think the choice to use CSOM or PnP Core or Microsoft Graph or the SharePoint REST API is up personal (or development team) preference. I don't think there's a right or wrong answer.