How do we know that both plates of a capacitor have the same charge?
In the context of ideal circuit theory, KCL (based on conservation of electric charge) holds.
For a capacitor connected to an external circuit, KCL demands that the current into one terminal equals the current out of the other terminal. This implies that the charge on each plate is equal and opposite.
Now, it is certainly possible to place unequal charge on the plates of a capacitor and I've seen this done in an undergrad physics lab. But it wasn't in a circuit context.
Context is crucial. Attempting to apply results outside of the context (assumptions) upon which they're based is an elementary (though, unfortunately, common) error.
Addendum to address a comment by @Physiks lover:
user41086's point is a good one. KCL is concerned about currents at a
single node, not at multiple nodes.
It isn't a good point because the statement that KCL isn't concerned about current at multiple nodes isn't true. One can draw a surface enclosing two or more nodes and KCL holds for the supernode.
Supernodes are most commonly used to enclose a floating voltage source in order to apply node voltage analysis.
But supernodes are more general than that. For example, see these MIT EE course notes on nodal analysis.
"The part of the circuit enclosed by the dotted ellipse is called a
supernode. Kirchhoff’s current law may be applied to a supernode in
the same way that it is applied to any other regular node. This is
not surprising considering that KCL describes charge conservation
which holds in the case of the supernode as it does in the case of a
Thus we can enclose the entire capacitor with a supernode and apply KCL. In this ideal circuit context (which includes a number of assumptions that only approximate reality), the stipulation that the charge on each plate is equal and opposite is valid.