I solved this particular problem today on my PC, it was due to a conflict with OneDrive which was set up to backup all pictures in the user's Pictures folder. It does this by moving the Pictures folder into the OneDrive folder. However the Pictures folder is also where iCloud for Windows puts its own iCloud Photos folder. Seems that having two different cloud services trying to sync the same folder is problematic.
Anyway I went into the OneDrive settings, backup tab, manage back up, and turned off Pictures backup, which moved the Pictures folder back into the regular user profile folder. Then I signed out of iCloud and signed back in again, the sync then started straightaway.
However, this still leaves the problem that I can't work out how to change where iCloud stores photos. I really want to put them on an external drive, but the option seems to be no longer there :-( - see this thread: https://discussions.apple.com/thread/251668351