Why would ATC generally issue vectors instead of simply issuing speed reductions to aircraft? It'd seem more efficient to have aircraft flying less track miles, so is there any reason that speed control is worse than giving vectors to aircraft?
Let's say you have two aircraft that will reach the same point in space at the same time, and your job is to keep them three miles apart. One way to do it is to calculate how many knots the second aircraft should reduce their speed so that at the time the first aircraft reaches the point, the second aircraft will have fallen three miles in trail.
Unfortunately for you, this means that you have to work a time-speed-distance-wind problem for every single aircraft that you, as a controller, handle.
Alternatively, you pick a point three miles away and tell the second aircraft to fly there.
Air traffic controllers are human, and humans are better at angles than we are at numbers. The simplest thing for controllers is usually the best thing - they've got lots on their mind already without making them do math too! This might change in the NEXTGEN air traffic network (where everyone has a GPS position and speed readout right there on the screen) but for now, easy is better than hard.
It is easier for an aircraft to change headings than to change speed, especially in situations that would require the aircraft to slow down and then speed back up repeatedly. ATC is also restricted from slowing aircraft below certain minimum speeds until they get closer to the airport, so a vector may be their only option.
For instance, if ATC is trying to line two airplanes up on final and get them spaced a certain distance apart and going the same speed, a vector is usually the best tool because all they have to do is angle the following airplane correctly to intercept final and don't have to issue any speed adjustments.