Since calls and puts have opposite sign delta, but both are positive vega, it feels like a strategy that buys/sell or sells/buys calls and puts on underlying moves to capture delta should generally tend to be vega neutral. Yet I always find that instead vega pnl always looks very negative. Why could that be, intuitively?
I assume you refer to European plain vanilla calls and puts. In this case it immediately follows from the put/call parity in a model-free setting that a call and put option with the same strike have the same vega. Unless two different strikes are involved the resulting portfolio of a long position in one and a short position in the other with the same absolute number of options will be vega neutral.
LocalVolatility's answer seems correct in the case where you trade calls and puts of the same strike, in exactly the same proportion, before anticipated moves (in which case, I would ask why not just trade the stock rather than the options?)
If that's not the case, I can't presume to know exactly what your strategy is; are you 'anticipating' an underlying move, say a move up, and then choosing options that look 'cheap' (relative to some pricing model) to trade into positive deltas? Is there a systematic way you're choosing the option to trade, or is it more ad hoc?
In either case, if you're not anticipating changes in implied vol then adverse selection is probably going to get the better of you. For example, if you anticipate that the underlying will go up, and the market is trading at a high implied volatility relative to what you're pricing in (with no real signs it's going to come down), option prices will look higher across the board. In this case, since you want to accrue long deltas, your pricing (or intuition) will probably tell you to sell puts since they're looking expensive right now rather than buy a call which doesn't look too attractive if you're not pricing in volatility. In this case, you will naturally lean towards doing more selling than buying - if you then decide you don't want the vega risk and buy the corresponding call later, you're at a disadvantage - you essentially got into a vega position at a random price, and so you're naturally going to (on average) buy it back at a bad time. It stands to reason that vega PL would be quite negative in this scenario.