Take the bus. It's the cheapest way to make this trip, and the price gap is usually bigger than people expect.
Tickets start at around $29 (€23) compared to roughly $35 (€28) in fuel and tolls — a saving of about $6 (€5). The journey takes 2h 28m versus 1h 56m by car, so you'll arrive a bit later, but you can use the time productively rather than spending it behind the wheel. No parking to sort, no fuel stops, and most coaches have Wi-Fi and power outlets.
Direct services are operated by Alsa, Union Ivkoni International, BlaBlaCar, Rede Expressos.
Driving is worth considering if you're on a tight schedule, travelling as a group (where fuel costs split several ways), or want the flexibility to stop along the way.