How can I force a Photo Stream sync on the iPhone?
Fastest solution (iPhone restart NOT needed!): I've found that if I open Photos on my iDevice after taking a photo, and then (after the spinning icon goes away) open Photos* on my Mac, the photo appears in my photo stream.



Notes:

This is way easier and faster than rebooting or resetting Wi-Fi.

It's also faster and more likely to work than just killing Photos Agent and restarting Photos.

(Further evidence showing WHY this works: When I open Photos on my iDevice, I see the spinning icon on my iDevice - IFF  I've just taken a photo.  If I access my photo stream on my Mac‡ without having opened Photos, the new photo is not there.)



*(or iPhoto if you haven't switched to Photos)

‡(such as by clicking Photo Stream under Media in the standard File..Open dialog box in recent versions of MacOS)

Note: Photo Stream only syncs the last 30 days of your photos.

2020 UPDATE: Recently, Photos was changed; when you open it you may need to take an additional step to cause the upload - but if so, you’ll see a prompt about it.