For $n$ towns ($n \geq 2$), the answer is ${n \choose 2} - \left \lfloor \frac{n}{2} \right \rfloor$.
Let $G$ be a graph with $n$ vertices where each vertex represents a town and an edge represents a road that connects two towns. Consider the inverse of $G$. Then, we want the minimum number of edges so that for every two vertices $v$ and $u$ not connected by an edge, $deg(v) + deg(u) \geq 1$.
The minimum number of edges needed is $\left \lfloor \frac{n}{2} \right \rfloor$. Otherwise, there will definitely be at least two isolated vertices which is a contradiction. For the construction where $\mid E \mid = \left \lfloor \frac{n}{2} \right \rfloor$, just pair the vertices such that the degree of each vertex is at most $1$.