As your MWE had a strange sketch not so related with the result you wanted, I got a little bit confused, sorry. Anyhow, I will present:
- A redraw of your original code, as a base of how some commands work.
- A colorful draw of your desired result.
- Another method to draw a smooth curve, from which you can choose which one to use.
I let colors in order to make it easier to identify who does what, but not exactly the ones you presented. You may mix and edit code at your will.
MWE 01
Please, notice how much simpler are some the code when some commands are used. I invite you check A very minimal introduction to TikZ.
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[thick]
\draw [red,very thick] (4,2) rectangle ++(4,4);
\fill[blue,very thick] (6,4) coordinate (A) circle (0.2);
\foreach \t in {0,20, ..., 360}{
\draw [-latex, dashed] (A) -- ++(\t:3.5);
};
\node(circle) [circle, inner sep=0.7cm, draw=red!120] at (A) {};
\end{tikzpicture}
\end{document}

MWE 02
The main MWE. The closed smooth parth is drawn with ... plot[smooth cycle, tension=.7] coordinates {...};
. Notice how scope
compacts the code to applied every node
, it makes the code much more clean and clear to read.
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[thick]
\draw [magenta,very thick] (0,0) node[left]{Solvent} rectangle ++(6.8,5.5);
\draw[green!50!black] plot[smooth cycle, tension=.7]
coordinates {(0.8,0.6) (3.3,1.2) (3.3,2.5) (4.4,2.9) (5.5,3.5) (4.8,5.1) (1.3,3.6)};
\node at (7.2,0.1) {$\partial \Omega$};
\node[green!50!black] at (5.6,5.1) {$\Gamma$};
\node[green!50!black] at (2.9,5) {$\Omega^{+}$};
\node[green!50!black] at (2.9,4.1) {$\Omega^{-}$};
\node[green!50!black] at (2.9,3.1) {Molecule};
\node[orange] (B) at (5.5,1) {Mobile Ions};
% Base syntax
% \node[circle, red, inner sep=0.1cm, draw] (circle) at (4.1,-1.3) {$+$};
% \node[circle, blue, inner sep=0.1cm, draw] (circle) at (2.4,-2.9) {$-$};
\begin{scope}[every node/.style={circle, red, inner sep=0.1cm, draw}]
\node at (3.7,3.8) {$+$};
\node at (2,2.2) {$+$};
\node at (1.7,3.1) {$+$};
\end{scope}
\begin{scope}[every node/.style={circle, blue, inner sep=0.1cm, draw}]
\node at (4.6,4.4) {$-$};
\node at (1.3,1.4) {$-$};
\node at (1.2,2.3) {$-$};
\end{scope}
% Base syntax
% \node[red] (circle) at (6.6,-0.8) {$+$};
% \node[blue] (circle) at (2,-0.3) {$-$};
\begin{scope}[every node/.style={cyan}]
\node (P) at (4.7,2.2) {$+$};
\node at (0.2,1.8) {$+$};
\node at (0.6,3.8) {$+$};
\end{scope}
\begin{scope}[every node/.style={teal}]
\node (N) at (6.1,4.1) {$-$};
\node at (1.6,4.6) {$-$};
\node at (0.6,4.6) {$-$};
\end{scope}
\draw[-latex] (B) -- (N);
\draw[-latex] (B) -- (P);
\end{tikzpicture}
\end{document}

MWE 03
The alternative to plot[smooth]
is using Bezier curves
with (A) .. controls (B) and (C) ..
, where (A)
, (B)
and (C)
are given coordinates.
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\draw[purple] (9.8,2.5) .. controls (10.8,2) and (12.3,2) .. (11.3,3) .. controls (10.8,3.5) and (12.3,3) ..
(12.8,4) .. controls (13.3,4.5) and (10,5.4) ..
(8.8,4.5) .. controls (7.3,3.5) .. cycle;
\end{tikzpicture}
\end{document}
