I have the package reference set as
<PackageReference Include="Selenium.WebDriver.ChromeDriver" Version="*" />
However tests are failing in AppVeyor throwing this error:
System.InvalidOperationException : session not created: This version of ChromeDriver only supports Chrome version 100
Current browser version is 99.0.4844.84 with binary path C:\Program Files\Google\Chrome\Application\chrome.exe (SessionNotCreated)
Shouldn't the asterisk be downloading the latest version on each AppVeyor run?

Try using
*-*. Using*only takes into account release versions.Reference:
https://learn.microsoft.com/en-us/nuget/concepts/package-versioning#floating-version-resolutions