Many of the older machines you're looking at only have 32 bit processors. As oldfred mentioned, Linux can utilize more than 3 GB of RAM using a hack called PAE. Linux is quite memory efficient - most distros can run comfortably with only 2GB of RAM, and more than 4GB is overkill unless you have a special need for it.
I'm running a Dell E4300 (equivalent to the E6400 but a smaller screen) with a Core2 Duo processor and 2GB of RAM. I'm not running Ubuntu at the moment, but I am running Debian 7.0, which is very similar under the hood to Ubuntu 12.04 LTS. Everything worked "out of the box" on my machine, and I'm having no problem running a full, 3D composited desktop environment (in my case, Gnome Shell). The only issue you may run in to with the Latitude E4300, E5400, E6400 line is that some of them shipped with Broadcomm wireless cards, which are notoriously hard to get working in Linux. It can be done, but it takes some extra work.
The Thinkpad line is reputed to have good Linux compatibility, but I don't have any personal experience to back that up.
As far as graphics programs go... Just bear in mind that you're talking about a 4-6 year old laptop with a mobile processor. You could probably run 3D modeling or CAD software but I wouldn't expect miracles.