[Droid Incredible Q&A, Help & Troubleshooting] calinb7:
Tethering With XP-64 Pro And Remote NDIS Install

It took me about a day to figure this out and yes, some of us still use XP. (I use it for mechanical CAD work, because I can't afford to buy all new CAD proggies, which would be required, if I upgraded Windows.) Tethering now works great and I can even share the connection further using MS Internet sharing on XP, which provides the tethered Internet to machines on my wired network and wifi router without having to connect them to my Moto G4 Plus. This means I can also place whatever firewall I choose in the path and extend the wifi range (my Netgear wifi signal is more powerful than my Moto G4 Plus).

I tried two .inf files. The only one that worked was produced by cutting and pasting to an .inf file from here:

https://docs.microsoft.com/en-us/windows-hardware/drivers/network/remote-ndis-inf-template#rndis-inf-template-for-ndis-60-windows-7-and-later

Then I had to explicitly add my Moto G4 Plus ID, as described here (remembering to enable USB tethering on my Moto G4 phone AFTER plugging it into my Windows computer):

http://karceh.blogspot.com/2012/05/how-to-usb-tether-android-phones-with.html

The rest of the install was nearly as described here in this xda-dev thread. Browse directly to the .inf file when given the chance to select the driver.

Here is my .inf file with my Moto G4 ID (you'll need to replace it with your phone's ID in the right spot, of course). Search for "Moto G4" to see where I placed my G4's ID:

﻿; Remote NDIS template device setup file
; Copyright (c) Microsoft Corporation
;
; This is the template for the INF installation script
; for the RNDIS-over-USB host driver.
; This INF works for Windows XP SP2, Windows XP x64,
; Windows Server 2003 SP1 x86, x64, and ia64, and
; Windows Vista x86 and x64.
; This INF will work with Windows XP, Windows XP SP1,
; and Windows 2003 after applying specific hotfixes.

[Version]
Signature = "$Windows NT$"
Class = Net
ClassGUID = {4d36e972-e325-11ce-bfc1-08002be10318}
Provider = %Microsoft%
DriverVer =06/21/2006,6.0.6000.16384
;CatalogFile = device.cat

[Manufacturer]
%Microsoft% = RndisDevices,NTx86,NTamd64,NTia64

; Decoration for x86 architecture
[RndisDevices.NTx86]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy

; Decoration for x64 architecture
[RndisDevices.NTamd64]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy
; My Moto G4
%RndisDevice% = RNDIS.NT.5.1, USB\VID_22B8&PID_2E24

; Decoration for ia64 architecture
[RndisDevices.NTia64]
%RndisDevice% = RNDIS.NT.5.1, USB\VID_xxxx&PID_yyyy

;@@@ This is the common setting for setup
[ControlFlags]
ExcludeFromSelect=*

; DDInstall section
; References the in-build Netrndis.inf
[RNDIS.NT.5.1]
Characteristics = 0x84 ; NCF_PHYSICAL + NCF_HAS_UI
BusType = 15
; NEVER REMOVE THE FOLLOWING REFERENCE FOR NETRNDIS.INF
include = netrndis.inf
needs = Usb_Rndis.ndi
AddReg = Rndis_AddReg_Vista

; DDInstal.Services section
[RNDIS.NT.5.1.Services]
include = netrndis.inf
needs = Usb_Rndis.ndi.Services

; Optional registry settings. You can modify as needed.
[RNDIS_AddReg_Vista]
HKR, NDI\params\VistaProperty, ParamDesc, 0, %Vista_Property%
HKR, NDI\params\VistaProperty, type, 0, "edit"
HKR, NDI\params\VistaProperty, LimitText, 0, "12"
HKR, NDI\params\VistaProperty, UpperCase, 0, "1"
HKR, NDI\params\VistaProperty, default, 0, " "
HKR, NDI\params\VistaProperty, optional, 0, "1"

; No sys copyfiles - the sys files are already in-build
; (part of the operating system).

; Modify these strings for your device as needed.
[Strings]
Microsoft = "Microsoft Corporation"
RndisDevice = "Remote NDIS based Device"
Vista_Property = "Optional Vista Property"