I doubt that Pokémon are immortal (except for maybe legendaries, and even that could be disputed in some cases). I think they age at a similar rate as humans, save for a couple of exceptions. Of course, there's probably some variation for each individual species.
As for the anime, given how people (most notably Ash) don't seem to age despite time obviously flowing, I'd say that Pokémon don't age either. Although, there have been a few instances where some Pokémon were clearly shown to be old(er).
There are some instances where a Pokémon's Pokédex entry specifies its lifespan, but I somewhat question the credibility of that; we all know how exaggerated they can be.
All in all, I'd say that it differs not only from species to species, but also between individual Pokémon.