Morning James
Welcome to the Forum
If you can get a Diagnostic Scan done using a BMW capable system it will help a lot and probably save changing parts that don't need changing. For your model I believe has I-bus so software like BMW 1.4.0 is available and really cheap (about $20) its easy to use and will actually give you Dealer level diagnostics and programming (if needed) Just load it onto a lap top and it will as said allow so much information and test ability.
However as you get an attempt to start, the place I would begin is check/test the Fuel Pump relay and it's loom back to the ECU. See if you can download a Pinout for the ECU to check which pins need checking testing
Hope this helps
Dave