02 sensor replacement.
Spark Plug replacement.
Cooling System replacement
- and you may need that inlet cam position sensor, right?
For oxygen sensors, I have switched to NTK. Bosch may be fine, but I have been cautious about Bosch since the company was sold and the new owners started sourcing a lot of their parts out of China and India.
For spark plugs, I use NGK BKR6EQUP ($8.50 ea). The e46 came with four electrode plugs so that is what I use in the e46s (but not in the e36s).
Because the threads on the plugs will be nickel plated, you don't have to put anti-seize on the threads, but these plugs will be in that aluminum head for a very long time, so I use anti-seize anyway. Remember that when you lube the threads with anti-seize, the specification for torque is no longer valid (it will be too tight), so be careful not to over-tighten the plugs. Don't try to save time by changing the plugs without first removing the air tray from the firewall. It is easy to cross-thread that #6 plug if you try to work beneath the air tray, and you don't want to do that.
For parts, you just about cannot go wrong on line these days. There are many excellent vendors. Just look for someone who carries original equipment manufacturer parts and tells you the brand name of every part they sell. My first choice is generally Autohaus Arizona, but if my order includes stuff they don't carry, like little plastic snaps and fasteners, my first choice is ECS Tuning. For brakes, watch for a good sale at BuyBrakes.com. These are my first choices, but I have had nothing but positive experiences with on-line vendors for the past 15 years, and a lot of different vendors are using the same supply network, so you pretty much cannot go wrong.
For jobs where you want to buy a kit and replace everything that ought to be replaced while you are in there so you don't have to repeat the job a year or two later to replace the part you missed, I like Pelican Parts. They have put together a lot of "kits" of quality parts so you don't forget anything that you ought to replace. Seems like I am always running to the BMW dealer for that one part that I should have thought to order. As I recall, Pelican does not always tell you the name brand of every part, but I trust them to sell good stuff.