I would start with electrical. Fuel pump relay is a biggie, I would replace it just to have a spare at least.
I had an 82 528e that I was working on (my GF's 16 year old daughters car), just doing a tune up and stuff. When I finished it would not start! Well, after a half day of technical troubleshooting it turned out to be that when I closed the glovebox it would not start, when I opened it, the car would start. Turns out all the CD's junk etc. in the glovebox were jamming against the computer(ECU) harness (the ECU is above the glovebox). So I removed all the junk, ty-wrapped the harness, reseated the ECU connector and it worked! Check your ECU connector.
Check fuse 1 (16 amp) in your fusebox. Remove it, squeeze the contacts together a little and reinstall. Also clean the contacts. This fuse powers the main and transfer fuel pumps. See if the fuse contacts are dirty/arced. Common problem area. Check all fuses while you're there.
Eliminate electrical areas first, on an older BMW the electrical system is your biggest problem area.
02 GMC Yukon SLT 5.3
02 Ninja ZX9R