Both are useful in many particular situations. Both has it's pros and cons. If you don't want to maintain your server, update them regularly, security, etc just want to focus on what you're working on, then definitely go with elastic beanstalk. It's recommended for small to medium size startups.
But, if you want full control over your server and want to do all those time consuming and periodic tasks, then go with the EC2. I've been using this in my project since 2014. If you'd ask me why? I'd say only reason is the full control over my server.
Now to finish answer your question, price depends on your usage and instance configuration. elastic beanstalk is little more expensive as everything is maintained by amazon.
Hopefully you've your answer.
Thanks