Which would be the perfect sensor for a turning device?

Hi. I'm on a project of a car (like a four wheel rover) and I have to make it turn precisely.
I know that making a pair of wheels go forward and the other one go backwards, the car will rotate having the center of its body as the axis. Now, I need to make it turn just the angle I need (for example, if I tell it to turn 90º clockwise, it'll has to do so).
I found this as a very difficult job having DC motors on each wheel. I thought measuring the time that the car lasts to make a 360º turn would be the solution, but this was very messy and imprecise.
Then, I had the idea to buy a compass so I could calculate the position having north as a reference (if the car was 58º from north, then if I wanted it to turn 90º clockwise, he would have to be 58º+90º from north), but I'm afraid some kind of magnet could ruin the measure.
I was thinking about using a gyroscope too but I've never used one so I don't know if that's what I need.

What do you think? Which kind of sensor could I use to achieve this?
Thanks in advance.

(P.S.: Sorry for my bad English. I'm argentinian :D)

A gyroscope measures the rate of turn. Much like how a speedometer on a car won't tell you your distance travelled, a gryoscope won't tell you that you have turned, for example, 90 degrees; it will tell you that you're turning at a rate of 90 degrees per second.

Gyroscopes tend to be very noisy and error will build up over a few seconds. The best solution involves combining a gyroscope and magnetometer (compass) where the gyroscope is used to calculate position based on previous rates of turn and the magnetometer is available to correct the errors that inevitably pile up from the gyroscope's readings.

This is not a simple problem and there are no simple solutions.

Wheel encoders will let you estimate how far each wheel has turned. If the wheels don't slip, you can then calculate the turn angle. In practice, the wheels will slip, so this will be only an approximation.

See this helpful introduction to differential steering: A Tutorial and Elementary Trajectory Model for The Differential Steering System