Your customers will have the exact same experience. We've used CiviCRM for years, and it doesn't allow you to set up the same type of transactional experience customers look for now - yes, even customers of poor little nonprofits. They have to create a log-in account before registering for an event. Then they have to back out to start registering for the event itself. We've had people give up on trying to register for our events - a key source of revenue - because they can't click on an event, register, and pay like they can with almost any other online transaction. Sure CiviCRM has some great administrative and database management functions. But, what's the point if the system runs off your customers?
A few comments:
1. You can set CiviCRM up so that anonymous users can register / contribute. A login is NOT required
2. Most users will add the links to the event / contributon page from various pieces of content (blog post, links on top etc). CiviCRM does not do this for you, and we feel that this is better dealt with at the CMS level. For e.g. see all the links to contributions / events on http://civicrm.org/