What is this capacitor for? What is its purpose in this circuit?
It generates a negative pulse on the reset line when the button is pressed. In steady state with the button released there are zero Volts across the capacitor, and reset is at 3.3V. When the button is pressed,  zero Volts must remain across the capacitor, so reset instantly goes to zero Volts then charges up to 3.3V through R6 in the usual  V*(1 - exp (-t/(R*C)).  Note,  it's not a pulse in the digital sense,  but close enough for reset purposes.

Addressing the question of why GPIO0 is treated differently it's because you are meant to hold down GPIO0 and then press reset. GPIO0 is s bootstrap pin that is read at startup to determine the boot mode. The capacitor makes what would otherwise be a sustained button press into a momentary button press.