You didn't mention what cargo space you need.
If you don't need the cargo space offered by X1, then go for the 328i. Newer chassis, better options. If you have some sentimental feeling about the E90/E91, then get the X1.
I have had sedans all my life (my last BMW was E46 10 years ago), just ordered my first SUV, the X1, because I have a black Labrador now.