One of the important features of
Mathematica is its ability to give you exact, symbolic, results for computations. There are, however, computations where it is just mathematically impossible to get exact "closed form" results. In such cases, you can still often get approximate numerical results.
When
Mathematica cannot find an explicit result for something like a definite integral, it returns a symbolic form. You can take this symbolic form, and try to get an approximate numerical value by applying
N.
If you want to evaluate an integral numerically in
Mathematica, then using
Integrate and applying
N to the result is not the most efficient way to do it. It is better instead to use the function
NIntegrate, which immediately gives a numerical answer, without first trying to get an exact, symbolic, result. You should realize that even when
Integrate does not in the end manage to give you an exact result, it may spend a lot of time trying to do so.