[proofplan]
We use the rank formula for the cycle matroid: for $A \subset E$, the rank is $r(A)=|V|-\kappa(A)$, where $\kappa(A)$ is the number of connected components of the spanning subgraph $(V,A)$. A cocircuit is the complement of a hyperplane, so we must show that a cut is inclusion-minimal exactly when deleting it raises the component count by one and adding back any deleted edge restores the old rank. The proof proceeds in both directions by translating between hyperplanes of $M(G)$ and minimal edge cuts of $G$.
[/proofplan]
[step:Translate cocircuits into complements of rank-maximal proper edge sets]
For each subset $A \subset E$, let $G[A]$ denote the spanning subgraph $(V,A)$, and let $\kappa(A)$ denote the number of connected components of $G[A]$. The rank function of the cycle matroid $M(G)$ is
\begin{align*}
r(A)=|V|-\kappa(A).
\end{align*}
A subset $C \subset E$ is a cocircuit of $M(G)$ precisely when $F:=E\setminus C$ is a hyperplane of $M(G)$. Thus $F$ must satisfy
\begin{align*}
r(F)=r(E)-1,
\end{align*}
and for every $e \in E\setminus F=C$,
\begin{align*}
r(F\cup\{e\})=r(E).
\end{align*}
Using the rank formula, these two conditions are equivalent to
\begin{align*}
\kappa(F)=\kappa(E)+1
\end{align*}
and, for every $e \in C$,
\begin{align*}
\kappa(F\cup\{e\})=\kappa(E).
\end{align*}
[/step]
[step:Show that every bond gives the complement of a hyperplane]
Let $B \subset E$ be a bond. By definition, there is a subset $X \subset V$ such that
\begin{align*}
B=\delta_G(X),
\end{align*}
and $B$ is nonempty and minimal under inclusion among nonempty cuts. Put $F:=E\setminus B$.
For a connected component $H$ of $G[E]$, let $V(H)$ denote its vertex set and let $E(H)$ denote its edge set. If both $\delta_G(X)\cap E(K)$ and $\delta_G(X)\cap E(K')$ were nonempty for two distinct connected components $K$ and $K'$ of $G[E]$, then $\delta_G(X\cap V(K))$ would be a nonempty cut properly contained in $B$, contradicting minimality. Hence all edges of $B$ lie in one connected component $K$ of $G[E]$.
Inside $K$, set
\begin{align*}
X_K:=X\cap V(K).
\end{align*}
Then $B$ is exactly the set of edges of $K$ with one endpoint in $X_K$ and one endpoint in $V(K)\setminus X_K$. Since $B$ is nonempty, both $X_K$ and $V(K)\setminus X_K$ are nonempty.
We claim that the subgraphs of $K$ induced by $X_K$ and by $V(K)\setminus X_K$ after deleting $B$ are connected. If the side $X_K$ split into two nonempty unions of connected components $Y$ and $X_K\setminus Y$ in $K-B$, then every edge in $\delta_G(Y)$ belongs to $B$, because no edge of $K-B$ joins $Y$ to $X_K\setminus Y$ and no edge of $G[E]$ joins $V(K)$ to a different connected component of $G[E]$. The cut $\delta_G(Y)$ is nonempty: since $K$ is connected and $Y$ is a proper nonempty subset of $V(K)$, some edge of $K$ joins $Y$ to $V(K)\setminus Y$, and that edge must lie in $B$. The containment is proper because $X_K\setminus Y$ is nonempty and, again by connectedness of $K$, some edge of $K$ joins $X_K\setminus Y$ to $V(K)\setminus (X_K\setminus Y)$; such an edge lies in $B$ but not in $\delta_G(Y)$. This contradicts the minimality of $B$. The same argument applies to $V(K)\setminus X_K$.
Therefore deleting $B$ replaces the original component $K$ by exactly two connected components and leaves every other connected component of $G[E]$ unchanged. Hence
\begin{align*}
\kappa(F)=\kappa(E)+1.
\end{align*}
For any $e\in B$, the edge $e$ joins the $X_K$ side to the $V(K)\setminus X_K$ side, so adding $e$ back merges those two components and restores the original component count:
\begin{align*}
\kappa(F\cup\{e\})=\kappa(E).
\end{align*}
By the translation in the first step, $F$ is a hyperplane of $M(G)$, and therefore $B=E\setminus F$ is a cocircuit.
[guided]
Let $B$ be a bond, so $B=\delta_G(X)$ for some $X\subset V$, and no nonempty cut is properly contained in $B$. We want to prove that $E\setminus B$ is a hyperplane of the cycle matroid. Since the rank of $M(G)$ is controlled by connected components, the goal is to show that deleting $B$ increases the number of connected components by exactly one, while adding back any edge of $B$ undoes that increase.
First, $B$ cannot be spread across two different connected components of $G$. Suppose edges of $B$ occurred in two distinct connected components $K$ and $K'$ of $G[E]$. Then the cut determined by $X\cap V(K)$ would contain exactly the edges of $B$ lying in $K$, so it would be nonempty and properly contained in $B$. That violates the minimality condition in the definition of a bond. Therefore all edges of $B$ lie in one connected component $K$ of $G[E]$.
Now define
\begin{align*}
X_K:=X\cap V(K).
\end{align*}
Within $K$, the set $B$ is the full edge boundary between $X_K$ and $V(K)\setminus X_K$. The important point is that each side remains connected after deleting $B$. If, for example, the part on the $X_K$ side were disconnected in $K-B$, choose a nonempty union $Y$ of some but not all connected components of that side. Then no edge of $K-B$ joins $Y$ to $X_K\setminus Y$, so every edge in $\delta_G(Y)$ must cross from $Y$ to $V(K)\setminus X_K$. Hence $\delta_G(Y)\subset B$. The cut $\delta_G(Y)$ is nonempty because $K$ was connected before deleting $B$, and it is a proper subset of $B$ because $X_K\setminus Y$ is nonempty. This contradicts that $B$ is a bond. The same reasoning proves that the $V(K)\setminus X_K$ side is connected.
Thus deleting $B$ changes exactly one connected component of $G$: the component $K$ is split into two connected components, and all other components are untouched. Therefore, if $F:=E\setminus B$, then
\begin{align*}
\kappa(F)=\kappa(E)+1.
\end{align*}
Using the cycle matroid rank formula,
\begin{align*}
r(F)=|V|-\kappa(F)=|V|-\kappa(E)-1=r(E)-1.
\end{align*}
Finally, every edge $e\in B$ joins the two sides of the split component, so adding $e$ back merges them:
\begin{align*}
\kappa(F\cup\{e\})=\kappa(E).
\end{align*}
Again by the rank formula,
\begin{align*}
r(F\cup\{e\})=r(E).
\end{align*}
So $F$ is a maximal proper flat, that is, a hyperplane of $M(G)$, and its complement $B$ is a cocircuit.
[/guided]
[/step]
[step:Show that every cocircuit is a bond]
Let $C \subset E$ be a cocircuit of $M(G)$, and set $F:=E\setminus C$. Since $F$ is a hyperplane, the first step gives
\begin{align*}
\kappa(F)=\kappa(E)+1
\end{align*}
and, for every $e\in C$,
\begin{align*}
\kappa(F\cup\{e\})=\kappa(E).
\end{align*}
Thus deleting $C$ increases the number of connected components by exactly one. Consequently, there is exactly one connected component $K$ of $G[E]$ whose edges are affected by the deletion; in $G[F]$, the vertex set $V(K)$ is split into exactly two connected components. Denote their vertex sets by $X$ and $V(K)\setminus X$. Every edge $e\in C$ must join these two components. Indeed, if $e$ had both endpoints inside one side, or if $e$ belonged to a different connected component of $G[E]$, then adding $e$ to $F$ would not reduce the component count, contradicting $\kappa(F\cup\{e\})=\kappa(E)$.
It follows that
\begin{align*}
C=\delta_G(X).
\end{align*}
Indeed, every edge of $C$ joins $X$ to $V(K)\setminus X$, so $C\subset \delta_G(X)$; conversely, no edge of $F$ can join the two connected components of $G[F]$ with vertex sets $X$ and $V(K)\setminus X$, so $\delta_G(X)\subset C$. Thus $C$ is a nonempty cut.
It remains to prove minimality. Suppose that $D=\delta_G(Y)$ is a nonempty cut with $D\subsetneq C$. First, deleting $D$ must increase the number of connected components. To see this, choose an edge $uv\in D$. The vertices $u$ and $v$ lie in a common connected component $H$ of $G[E]$. In $G[E\setminus D]$ there is no edge joining $Y$ to $V\setminus Y$; hence no path in $G[E\setminus D]$ can connect a vertex of $Y\cap V(H)$ to a vertex of $V(H)\setminus Y$. Since $uv\in D$, both of these sets are nonempty, so $H$ is disconnected after deleting $D$. Therefore
\begin{align*}
\kappa(E\setminus D)>\kappa(E).
\end{align*}
On the other hand, since $D\subsetneq C$, the set $C\setminus D$ is nonempty. The graph $G[F]$ splits the original component $K$ into exactly the two connected components with vertex sets $X$ and $V(K)\setminus X$, and every edge of $C$ joins these two components. Hence adding any edge of $C\setminus D$ to $F$ reconnects those two components. Because
\begin{align*}
E\setminus D=F\cup (C\setminus D),
\end{align*}
the subgraph $G[E\setminus D]$ keeps the component $K$ connected and leaves every other connected component of $G[E]$ unchanged. Thus
\begin{align*}
\kappa(E\setminus D)=\kappa(E),
\end{align*}
contradicting the strict inequality above. Hence no such $D$ exists, and $C$ is minimal among nonempty cuts. Therefore $C$ is a bond.
[/step]
[step:Conclude the equivalence]
The previous two steps prove both implications: every bond is the complement of a hyperplane of $M(G)$, hence a cocircuit, and every cocircuit is a minimal nonempty cut, hence a bond. Therefore the cocircuits of the cycle matroid $M(G)$, equivalently the circuits of the dual matroid $M(G)^*$, are exactly the bonds of $G$.
[/step]