What Is The Difference Between “pay” And “capture” Operations?

Q. What is the difference between “pay” and “capture” operations?

pay() – Register payment fact: update self totals from the invoice / Update totals…
capture() – Capture the payment online
* Requires an invoice. If there is no invoice specified, will automatically prepare an invoice for the order
* Updates transactions hierarchy, if required
* Updates payment totals, updates order status, and adds proper comments