I don't really have an opinion about who it should be, but I hope it's none of the actors I like. Bond-role has bad habit of branding the actor with "I am Bond, James Bond"-brand for the rest of his career. Only Connery has survived from the branding, mainly because he doesn't look like Bond anymore.
I'll rank them, along with my favorite movies of theirs:
1. Sean Connery - Goldfinger or You only Live Twice
2. Pierce Brosnan - Goldeneye (Die Another Day made up for the two before it)
3(Tie). Timmothy Dalton - License to Kill
3(Tie). Roger Moore - Live and Let Die or Moonraker
5. George Lazenby - On Her Majesty's Secret Service - Disgraceful Performance
6. The first James Bond in the musical of Casino Royale...an...AMERICAN! I don't remember his name.
As for the next James Bond...Pierce is beginning to show a little gray, but he'll be 007 for a few more movies I'm guessing. Hugh Jackman's Australian, isn't he? I honestly he'd be too scruffy for Bond. I think it should be a lesser-known actor that has a lot of potential from preferrably Scotland.