I thought you could specify which contacts were viewed (sim or phone ) on the I contact list. I don’t really use the sim for contacts at all really, it’s all just on the phone now.
Either way, I run all my contacts via my google account, and for any phone , I just plug in the google account and make the phone sync contacts with it. Works well for me, as it lets me change phones without transferring details manually , it just syncs and picks up everything. It also lets my wife and I share contacts so we see the new additions for new people we meet or get phone numbers from . . . Even when she has an iphone and I have and android phone.
I would look at getting the phone itself to sync with the google account for contacts and let the phone upload everything ( you can check contacts on a desktop by going into th account contacts) and then on the new phone add the google account and sync the contacts on that. It he new phone should them pull all the contacts in a matter of seconds.