Given fixed objects A,B,C and morphisms g,f then a pullback is P with some universal property. 
Pullback is a:
 Generalisation of both intersection an inverse.
 If a category has binary products and equalisers, then it has pullbacks.
In programming terms it is related to the concept of indexing.
The pullback is like a type of division for function composition, in other words if multiplication is function composition then what is division? This comes in left and right flavors that is:
if h = g o f
 We know f and h, how do we find g?
 We know g and h, how do we find f?
Pullbacks  Pushout  

universal cone over diagram  
P is the pullback of f along g or g along f (A,B,C fixed) . Square must commute (in best possible way) so any other square, also containing (A,B,C) must uniquely map to it. 
P is the pushout of A,B,C 

generalisation 

a kind of colimit 
examples: set:  Σ<a,b>A×B f(a)=g(b) where: k(x) maps to <j(x),i(x)> called a fibred product. 
A U B /equivalence relation 
In concrete categories the Cartesian product is often the categorical product. The pullback is like the categorical product but with additional conditions. So in the following examples we have a Cartesian product with a subset of the rows and columns.
Examples in Set
Set Example 1
This diagram is both a pullback and a pushout. 
Set Example 2
How does the above example relate to the idea that the pullback is a subset of the cartesian product of two sets? We have this restriction on the Cartesian product:
Σ<a,b>A×B f(a)=g(b)
So, in this example, 'P' contains only the subset of the Cartesian product shown in red (that is <e,e>). 
Examples in Graphs
 Pullbacks always exist.
 Pushouts do not necessarily exist.
In this example only the red arrows go both ways round the square so only the red arrows exist in 'G'. 
Examples in Groups
Pullback as generalisation of Inverse
Hence we have two morphisms to C so this looks like the given part of a pullback. 

To complete the square we add cone for this diagram and we call it f^{1}(B) to emphasise that it is the inverse of 'f'. 
Examples in Various Categories
Product (pullback) 


generalisation  a kind of limit  
set example  cartesian product {a,b,c}*{x,y}= 

group  the product is given by the cartesian product with multiplication defined componentwise.  
Grp (abelian)  direct sum  
vector space  direct sum  
poset  greatest lower bound meet 

base topological space  
POS  greatest lower bounds (meets) 

Rng  
Top  the space whose underlying set is the cartesian product and which carries the product topology  
Grf  
category  objects: (a,b) morphism: (a,b)>(a',b') 
tensor products are not categorial products.
In the category of pointed spaces, fundamental in homotopy theory, the coproduct is the wedge sum (which amounts to joining a collection of spaces with base points at a common base point).