Two words: the centre and the arrow \(z - z_0\)
The centre is the fixed point we rotate about. It does not move, and every other point keeps its distance from it while it turns.
The arrow from \(z_0\) to \(z\) is the complex number \(z - z_0\). Start at \(z_0\), add \(z - z_0\), and you reach \(z\).
Take the centre \(z_0 = 1 + i\), the point \((1, 1)\), and the point \(z = 3 + i\). The arrow from \(z_0\) to \(z\) is
\[ z - z_0 = (3 + i) - (1 + i) = 2 . \]
Slide this arrow so that it starts at the origin: it ends at \(2\). So \(z - z_0\) is the same arrow, only moved to the origin.

Turning an arrow: multiply by \(e^{i\theta}\)
\(e^{i\theta} = \cos\theta + i\sin\theta\) is the arrow of length \(1\) at angle \(\theta\). When two complex numbers are multiplied, the lengths multiply and the angles add, so multiplying by \(e^{i\theta}\) turns an arrow by \(\theta\) and keeps its length. With \(\theta = \dfrac{\pi}{2}\), \(e^{i\frac{\pi}{2}} = i\): multiplying by \(i\) is a quarter turn, and the arrow \(2\) turns to \(2i\).
Why multiplying by \(i\) is not enough
Rotate \(z = 3 + i\) about the centre \(z_0 = 1 + i\) by \(\dfrac{\pi}{2}\) anticlockwise. Rotating about \(z_0\) never changes the distance from \(z_0\), so the answer must lie on the circle of radius \(2\) about \(z_0\).
The common mistake
\[ iz = i(3 + i) = 3i + i^2 = -1 + 3i . \]
But multiplying by \(i\) turns the arrow that starts at the origin. So the point turned about the origin, not about \(z_0\), and it lands off the circle:
\[ |(-1 + 3i) - (1 + i)| = |-2 + 2i| = 2\sqrt{2}, \ \text{not } 2 . \]

Rotation about any point: shift, turn, shift back
Shift. Slide the arrow so that the centre \(z_0\) sits on the origin. The arrow is now the number \(z - z_0 = 2\).
Turn. The arrow starts at the origin, so multiplying by \(i\) turns it correctly: \(2 \times i = 2i\).
Shift back. Add \(z_0\) again: \(z' = 2i + (1 + i) = 1 + 3i\), the point \((1, 3)\). It lies on the circle, and the turn about \(z_0\) is exactly \(\dfrac{\pi}{2}\).

Rotation about any centre
To rotate \(z\) about \(z_0\) through an angle \(\theta\):
\[ \text{anticlockwise: } z' = z_0 + (z - z_0)\,e^{i\theta}, \qquad \text{clockwise: } z' = z_0 + (z - z_0)\,e^{-i\theta} . \]
To also multiply the distance from \(z_0\) by \(k > 0\), multiply by \(k\,e^{i\theta}\) instead. A half turn (\(\theta = \pi\), \(e^{i\pi} = -1\)) sends \(z\) to \(2z_0 - z\).
The rotation theorem
Take any triangle with vertices \(z_1\), \(z_2\) and \(z_3\), and let \(\alpha\) be its angle at \(z_1\). The side from \(z_1\) to \(z_2\) is the arrow \(z_2 - z_1\), and the side from \(z_1\) to \(z_3\) is the arrow \(z_3 - z_1\).
Turn the first arrow about \(z_1\) anticlockwise by \(\alpha\): now it points along the second side. Then stretch it by the ratio of the two lengths, \(\dfrac{|z_3 - z_1|}{|z_2 - z_1|}\), and it reaches \(z_3\).

Rotation theorem
\[ \frac{z_3 - z_1}{z_2 - z_1} = \frac{|z_3 - z_1|}{|z_2 - z_1|}\;e^{i\alpha} \]
The ratio of the lengths is the stretch and \(e^{i\alpha}\) is the turn. Some books call it the rotation formula.
Which way is the angle measured?
Always go from the side in the denominator to the side in the numerator. Anticlockwise is \(+\alpha\) and clockwise is \(-\alpha\). With the sides swapped, the turn from \(z_3 - z_1\) back to \(z_2 - z_1\) is clockwise:
\[ \frac{z_2 - z_1}{z_3 - z_1} = \frac{|z_2 - z_1|}{|z_3 - z_1|}\;e^{-i\alpha} . \]
The third vertex of an equilateral triangle
Two vertices are \(z_1 = 1\) and \(z_2 = 3\). All three sides are equal, so there is no stretch. Every angle is \(\dfrac{\pi}{3}\), so turn the side from \(z_1\) to \(z_2\) about \(z_1\) anticlockwise by \(\dfrac{\pi}{3}\):
\[ z_3 = z_1 + (z_2 - z_1)\,e^{i\frac{\pi}{3}} = 1 + 2\left(\frac{1}{2} + \frac{\sqrt{3}}{2}\,i\right) = 2 + \sqrt{3}\,i . \]
Check: \(|z_3 - 1| = |1 + \sqrt{3}\,i| = 2\) and \(|z_3 - 3| = |-1 + \sqrt{3}\,i| = 2\). All three sides are \(2\).

Careful: one side, two triangles
Most students stop at \(z_3 = 2 + \sqrt{3}\,i\). But the side can also turn clockwise, by \(-\dfrac{\pi}{3}\):
\[ z_3' = 1 + 2\left(\frac{1}{2} - \frac{\sqrt{3}}{2}\,i\right) = 2 - \sqrt{3}\,i . \]
This gives a second equilateral triangle, below the side. Unless the question gives the order of the vertices, give both answers.

The missing vertices of a square
\(ABCD\) is a square with its vertices in anticlockwise order, \(A = 1 + i\) and \(B = 3 + i\). The side \(AD\) is the side \(AB\) turned anticlockwise about \(A\) by a quarter turn, and \(C\) is \(D\) moved by the same arrow as \(A\) to \(B\):
\[ \begin{aligned} D &= A + (B - A)\,i = (1 + i) + 2i = 1 + 3i,\\ C &= D + (B - A) = (1 + 3i) + 2 = 3 + 3i . \end{aligned} \]
All four sides are \(2\) and the angle at \(A\) is a right angle, so \(ABCD\) is a square.

Square \(ABCD\) from the side \(AB\)
Vertices in anticlockwise order: \(D = A + (B - A)\,i\) and \(C = D + (B - A)\). In clockwise order the quarter turn goes the other way, so use \(-i\): here that gives \(D = 1 - i\) and \(C = 3 - i\).
Solved example
A square has its centre at \(c = 2 + i\) and one vertex at \(v = 4 + 2i\). Find the other three vertices.
The arrow. From the centre to the vertex: \(v - c = 2 + i\).
Quarter turns. The vertices of a square are quarter turns of one another about its centre, so multiply the arrow by \(i\), \(i^2\) and \(i^3\) and add \(c\):
\[ \begin{aligned} c + (2 + i)\,i &= (2 + i) + (-1 + 2i) = 1 + 3i\\ c + (2 + i)\,i^2 &= (2 + i) + (-2 - i) = 0\\ c + (2 + i)\,i^3 &= (2 + i) + (1 - 2i) = 3 - i \end{aligned} \]
The other three vertices are \(1 + 3i\), \(0\) and \(3 - i\).

Practice set
Easy to hard. Sketch each question first: the picture tells you where the answer should be. Try each one before you open its answer.
Rotate \(4 + 3i\) about \(1 + i\) anticlockwise through \(\dfrac{\pi}{2}\).
Show answer
\(-1 + 4i\). \(z - z_0 = 3 + 2i\). Times \(i\): \(3i + 2i^2 = -2 + 3i\). Add \(z_0\): \((-2 + 3i) + (1 + i) = -1 + 4i\).
Rotate \(3 + 2i\) about \(1 + 2i\) clockwise through \(\dfrac{\pi}{2}\).
Show answer
\(1\). \(z - z_0 = 2\). Clockwise, so multiply by \(e^{-i\frac{\pi}{2}} = -i\): \(-2i\). Add \(z_0\): \(-2i + (1 + 2i) = 1\).
Rotate \(2\) about \(1 + i\) through \(\pi\).
Show answer
\(2i\). \(z - z_0 = 1 - i\). A half turn multiplies by \(e^{i\pi} = -1\): \(-1 + i\). Add \(z_0\): \((-1 + i) + (1 + i) = 2i\). Check: \(2z_0 - z = 2 + 2i - 2 = 2i\).
Two vertices of an equilateral triangle are \(-1\) and \(1\). Find the third vertex.
Show answer
\(\sqrt{3}\,i\) or \(-\sqrt{3}\,i\). \(z_2 - z_1 = 2\), so \(-1 + 2\left(\dfrac{1}{2} \pm \dfrac{\sqrt{3}}{2}\,i\right) = \pm\sqrt{3}\,i\). No order is given, so both.
Two vertices of an equilateral triangle are \(1 + i\) and \(1 + 3i\). Find the third vertex.
Show answer
\((1 - \sqrt{3}) + 2i\) or \((1 + \sqrt{3}) + 2i\). \(z_2 - z_1 = 2i\). \(2i\left(\dfrac{1}{2} + \dfrac{\sqrt{3}}{2}\,i\right) = -\sqrt{3} + i\) and \(2i\left(\dfrac{1}{2} - \dfrac{\sqrt{3}}{2}\,i\right) = \sqrt{3} + i\). Add \(1 + i\) to each.
\(ABCD\) is a square with its vertices in anticlockwise order, \(A = 0\) and \(B = 2 + i\). Find \(C\) and \(D\).
Show answer
\(C = 1 + 3i\), \(D = -1 + 2i\). \(B - A = 2 + i\). \(D = A + (B - A)\,i = 2i + i^2 = -1 + 2i\). \(C = D + (B - A) = (-1 + 2i) + (2 + i) = 1 + 3i\).
Show that \(0\), \(1 + i\) and \(-1 + i\) are the vertices of a right-angled isosceles triangle.
Show answer
\(\dfrac{-1 + i}{1 + i} = i\). Multiply above and below by \(1 - i\): \(\dfrac{(-1 + i)(1 - i)}{2} = \dfrac{2i}{2} = i\). Modulus \(1\): the two sides from \(0\) are equal. Argument \(\dfrac{\pi}{2}\): a right angle at \(0\).
A student rotates \(5 + 2i\) about \(2 + 2i\) anticlockwise through \(\dfrac{\pi}{2}\) and writes \(i(5 + 2i) = -2 + 5i\). Find the mistake and the correct answer.
Show answer
\(2 + 5i\). The student turned about the origin. \(z - z_0 = 3\); times \(i\): \(3i\); add \(z_0\): \(2 + 5i\). The student's \(-2 + 5i\) is \(|-4 + 3i| = 5\) from \(z_0\), not \(3\).