I am trying to find all generating sets of $S_3$, is there a theorem which states how many sets I should have?
I know for example $(12)$ and $(123)$ is one such generating set however my question is 'how do I find all generating sets without having to compute them with brute force?' as of course, this will be lengthy.
I am not aware of any general theorem for this task. However, since $S_3$ is not cyclic, every set that generates it must have at least two distinct elements, both of which are distinct from the identity element $e$. That doesn't leave you with many choices. In fact, any subset $S$ of $S_3\setminus\{e\}$ with at least two distinct elements generates $S_3$, with one exception: that's when $S=\bigl\{(1\ \ 2\ \ 3),(1\ \ 3\ \ 2)\bigr\}$; this set generates the subgroup $\bigl\{e,(1\ \ 2\ \ 3),(1\ \ 3\ \ 2)\bigr\}$.