Pro Very polished user experience
The entire Slack interface is polished and intuitive to use. There are very few bugs or inconsistencies in the UI and it's very fast to use. There is nothing in particular that is new with Slacks implementation of team chat, but the execution of the groups (called channels), search, external service integration and notifications is close to perfect.
Pro Robust integration with a huge number of tools
Slack integrates with tools like Trello, GitHub, Dropbox, Mailchimp, and dozens of others, so you can have a centralized event feed of your project right alongside your chat. This is tremendously useful for keeping context with your discussions.
Pro Flexible, granular notification settings
Notifications are handled separately for mobile and the web app. You can receive notifications for all messages, just direct messages, or based on filters, and you can have different settings for different channels: you don't have to get notified every time someone pushed to GitHub or every time someone posts to off-topic chat, unless you want to.
Con Expensive when you need to upgrade
At $6.67 per user / month (or $8 if billed monthly) , Slack is significantly more expensive than the competition if you need features such as unlimited integrations (more than 10) or unlimited message storage (more than 10,000). However, the free version of Slack includes unlimited users.
However if you need only unlimited messages you can use storage services like https://slarck.com to upload then browse and search your entire message history, while staying in Slack's free plan. So with a combo of Slack+Slarck this con is not that major.
Con No Self-Hosting Available
If you ware worried about third-parties getting access to your data you should consider self-hosting. With self-hosting you are in control over where your data is stored, who has access to it. You will also not be vulnerable to exploits of a third-party provider.