what i can tell you is the s54 engine of the e46 m3 is an extremely difficult installation into the e9 ... you have to basically change everything in the front end. if you have any thoughts of doing that, speak to
@bdigel. he has done it successfully, but it is NOT for the faint of heart. the s38 of the e28 m5 / e24 m6 is a lot simpler by comparison, but substantially more expensive just for the engine. the stock s38 is 288 hp compared to 245 / 250 of the better single cam (m30 / m90) versions. what you might not know is that the s38 makes its power above 4500 rpm. yes, the twin cams open up at higher revs and can dial it up substantially. now for the downside, while it is easier to install into the e9, its not an easy install as you will have to make other changes. with all of that extra power comes the necessity of much better brakes / suspension and bracing of the chassis.