As it happens, I use (and pay for) both Asana and Basecamp. I use Asana internally with my own staff, and I use Basecamp externally with clients.
My clients tend to be non-technical businesses with custom software needs -- and most of them would be like "WHAT. THE. FUCK. HELLLP~!" if I asked them to use Asana. Keyboard shortcuts, context menus, sliding popovers, disclosure widgets, multiple views onto the same data/work-graph, aiiiighhhhh!
On the other hand, Basecamp has really nailed their niche -- the project management app that really is simple enough for 'average folks'. Making that choice completely alienates the tech-savvy power user that most of their competitors seem to be targeting (e.g. Flow, Wrike, Teamwork PM, Azendoo, Dooster, Teambox, TeamLab, Do.com, FMYI, to name just a few that I have evaluated and rejected).
Which 37Signals, oops I mean Basecamp, is obviously OK with, given Basecamp's massive user base and success. Basecamp is a pretty cool software story, and actually a pretty cool piece of software, even though it is too limited and underpowered for me to use it as my own primary project manager.
[1] I develop software (among other roles) for a living, but I develop project-management web app software mostly just in my fantasies and rage-imagination... spending many hours in a week in these apps really makes a person want to develop the One True Project Management app, though.