It depends on your needs and skill level. Do you have any electronics or programming experience?
Arduino is a good entry-level platform, but has somewhat limited capabilities (inputs/processing power). I/O can be expanded via expansion boards, but you're still limited by the microcontroller, so it's best suited for simple tasks, which may be appropriate depending on what you're wanting to do (for instance, reading a speed sensor and translating that onto a can bus to control a speedometer is simple enough). A bonus is Arduino makes it really easy to get up and running if you don't have much software development experience.
When I do a swap, I'll probably use a beaglebone black for the brain. It's got two built in CAN bus interfaces and significantly more processing power and memory.