In my experience, SSRS is a reporting tool written for Developers. By exposing the RDL, it gives a programmer full control over the report. Don't like what you see in the Design tool - open the RDL much like you would when writting ASP.NET or a Winform UI and need to access the code behind. Same for formatting, etc - you have extreme control over the formatting using a programming language (granted it is VB.NET, but once you are use to it, it isn't so bad). You can add logic to just about any formatting property you need. Ultimately, the power is in the ability to fine tune your stored procs or other data sources such as XML - yes, you can write a report against an XML datasource.
In the 2008 version, you can write local reports that don't need to be deployed to the web service (I know that is a knock against SSRS also).
More flexibility - program against the Reporting Service itself. Want to send a report to the user as an Excel - program that against the reporting service API.
I found Crystal to be very limiting as a programmer - it is tailored more for the business analyst. ActiveReports offers some of this flexibility, but not the depth.