Forza 3. That is all.
...alright, I'm going to give some reasons why so I don't feel like a jerk for making a useless post.
1) Shift is too strict to be an arcade racer and too loose to be a simulation racer. It goes for the incredibly unfun middle ground. All of the cars slide way too much to be fun (I'm avoiding the word realistic because I've never raced a car, so I can't really say what is and isn't realistic).
2) Forza 3 has 400+ cars and 100 tracks. Shift has 72 cars and 18 tracks.
3) Forza 3 has the rewind button. While some may cry out "You can't rewind in the middle of a real race!", I say yes, you're right. However, I'm playing a videogame to have fun, and hitting the brake one second too late, sending you crashing into the wall, on lap 44 of a 45 lap race, causing you to lose several hours of your time, is not fun.
4) Shift has a way better cockpit view. I'll give it that.
5) Forza 3 is far more customizable. If you like a more arcade race, you can set the difficulty to match that desire. If you want a hardcore simulation, you can set it to that too. If you just want to paint cars, you can do that. Need for Speed has one setting: middle-ground racing.
Also, I would just like to say I'm not one of those people that only like racing games that are meant to be realistic and more serious. I played Most Wanted and loved every second of it. Need for Speed just tries to sit right on the line between arcade and realistic, and fails miserably.