We don't have planet clustering yet and it's December 21st, 2012! If the world is ending, stop reading this and save yourself. If not, carry on.
Clustering is a technology that automatically allows one physical server to take over the tasks of another failed physical server. The goal of clustering is to ensure that users running applications will have little or no downtime when a failure happens. What does this mean? Basically, if one server fails in a cluster, another one will automatically take over, keeping downtime to a minimum.
To be a bit more specific, clustering refers to a group of two or more nodes that work together and represent themselves as a single virtual server. This means that when a client connects to a cluster, the client observes only one SQL server, as opposed to many. When one of the nodes in the cluster fails, its duties are taken over by another server in that cluster. Theoretically, the user notices nothing when the failure occurs.
Clustering is not a complete backup system for your applications. It is only one part of the equation when it comes to ensuring minimum downtime. Clustering provides the ability to recover from failed server hardware and software. This is the main benefit of clustering.
Generally speaking, the Active/Passive configuration will provide better performance.