A Subaru isn't all that simple to maintain, either... the boxer engine's quirky layout means that some tasks that are simple on an inline four will require extra labor (and thus, extra $$$) to perform on a Subaru. And a turbo car also has special needs.
That said, a Subie is still probably cheaper to maintain. The 320i is more exciting to steer, but the Subie is more practical (bigger), faster (bigger engine... with a turbo) and cheaper to own. Doesn't quite have the solidity (320i is utterly silent at 160 km/h...

) or brand cachet of the BMW, though... so whichever you get will depend on your priorities.