I've test driven both of them, (well almost, the Shelby I've driven was 2008, but I guess there is no much difference to the 2010), and I can say some things. Shelby is a heavy car, it is not too much agile, it is pretty rough, and you have to be a pro to move this thing through corners really fast, but you can predict the car's actions. Shelby is, of course, perfect for the drag strip, and can make some spectacular burnouts. BMW is more precise, it is easier to control. The car I've driven was with dual-clutch tranny. To be honest, I'm not a big fan of such gearbox, but I tell you, I was so much excited behind the steering wheel of that Bimmer! Not as fun as in Shelby though. The BMW's gear change is a blast. And at the drag race, accelerating the M3, I felt it actually was not slower than the Shelby, but faster! Both cars are thrilling, you won't get bored, and you won't regret, if you drove both cars, I tell you. So BMW is good for performance and girls are yours, while Shelby is more for soul, and everyone consider you a reckless car enthusiast.
But all depends on what you're looking for, on what purpose do you want to own one of these cars. Because outside the track ride quality, service, mileage, practicality etc. really matters, and you have to keep that in mind! Actually, the only I can advise here is that Shelby is not nearly a car for family, or for petrol economy. But BMW's service is just a nightmare! I mean, the parts are pretty much expensive.
I hope my