Hi
It depends on if you are looking at the E46 or the E90 ?
From your BHP figures I am guessing at the E90 - in which case both the 318 and 320 are 4-cylinder engines. In fact they are both the same engine Whether or not you think the extra price for 21 horses is worth it - I don't.
Now, if you were talking about the E46, the 318i and 320i differ greatly (after model year 2000) as one is a 4-pot and one a 6-pot (170bhp) - there is no comparison really - 6 cylinder every time.
Cheers
Kane