Could be the starter, but before you start to replace expensive parts the EWS and DME modules may need to be synchronized, it requires a BMW specific scan tool. If they lost sync the car won't start - even with a new starter. Did the battery died before this problem occured?
I think the sync was lost between the EWS and DME when you replaced the battery if the no start condition happened right after that. You can try to move the shift selector and see if it starts in N or P, in this case the neutral safety switch may be bad or misaligned. Since everything would be just a guess without the proper diagnostic, I'd suggest to get it to a shop for a diagnostic.