Sounds like you should check the crank position sensor.

I currently have the same problem with my 520i, it was intermitent but now will not fire, cranks fine, fuel pump runs etc.

I've followed the cps cable from the sensor to up near the thermostat housing and behind the oil filter housing but then the cable disappears beneath the inlet manifold / near the alternator and so far I can't locate the connector. Perhaps it's easier from underneath the car?? Or maybe it's easier to check the signal at the ECU plug? anyone know the pin number?