DFA has a finite memory. By finite memory, I mean, It can not store any information of infinite length. Let's take an example, $$ l = {0^n1^n | n > 0} $$ This is a very simple example of a language which can not be recognized by a DFA, because, to accept a word of the above language, the DFA need to count the number of 0's seen. The number of 0's can be infinite as n has no upper bound. Therefore this language is an irregular language. But if he we have an upper bound to n, then then any word of the language will be finite length and can be recognized by a DFA (just make those many number of states in the worst case).
Now, let's take another example: $$ l = { (01)^n | n > 0 } $$ The words of languge l can be of infinite length. But it does not imply that it is a irregular language, i.e. can not be recognized by any DFA, Because it has a pattern. DFA does not need to memorize the input symbol seen two states before the current state, hence, a finite memory can do the job.
In your example, $$ l = { WW^R} $$ DFA has to memorize the contents of W first, to recognize it's reverse, and there is no upper bound on the length of W. Hence it requires an infinite memory. This is very nice tutorial playlist on theory of computation by Prof. Harry Porter. The first 3 videos should clarify your doubts.