Even with lotions that contain mainly natural ingredients contain preservatives that keep them fresher for longer periods of time, but they eventually go bad. So yes. Lotions can expire.
Whether or not they can cause damage, I think it depends on your skin type, the type of lotion, and whether or not the bottle was sealed.
If it's been 2 or 3 years, just toss the bottle. It;s not worth finding out if it will irritate or hurt your skin. And in nay case, the lotion will have certainly lost its potency.