Adding a user through the Network Admin area shows a very limited range of options.

There are additional options when adding a user through one of the sub sites.

Adding a user through a single / stand alone site gives even more options.

There are a few WordPress Trac tickets that bring up similar concerns.
There is a Trac ticket that needs to be included before explorations can happen.
REST API: Improve users endpoint in multisite
“REST API users endpoint needs to be improved to support multisite behavior.”
Add New User screen tickets:
Introduce an ‘All Network Users’ view to multisite user list tables.
Include more usermeta fields in the Network Admin’s “Add User” view.
Improve UX on Add New User screen.
A few mockups added to the Improve UX on Add New User screen trac ticket.

Another mockup with a multi select drop down.

Here is a wireframe for adding roles and users to sub sites through the all users screen.

It would be better to have a lookup system. Add user and one begins to write username or e-mail address and a suggestion of existing user shows up or a suggestion would show up to add a new user.
Resources: