If you need a key with the EWS transponder chip inside of it, yes the only place to go is the dealer.
You can buy blank keys from a few places online, which you can get cut, but it will never start the car without an EWS transponder chip in it.
From my knowledge only BMW can get you an EWS transponder chip programmed to your EWS. Unless someone figured out a way to read your ECU, and program the chip, I think the dealer is the only option.
If you just need a blank key-blade cut, then you can get that done anywhere that has machine. There is a member on the board that cut mine for me (Alarm fob built into a key for the e36). I still needed a key from dealer for the transponder chip , which put into the alarm key to make it start my car.