Have a 1998 528i M52 with 300k, runs well but recently under load only, a violent bucking happens, the tach drop a bit and then recovers. Its intermittent and can happen when the car is hot or cold. Code say crankshaft position sensor and O2 sensors (pre-post cat) MAS, misfire @3. So.. Cleaned MAS, fired in new plugs (#3 was oil fouled so changed cover gasket), new CPSensor, new pre-cat O2 sensors and cleaned EGR...but engine light still on and codes are CPsensor and post cat o2 sensors

Any help would be much appreciated. Checked pre threads and responded to an old post, but this newbie is trying to get the hang of it.