The seventh seed, who will take on either Serena Williams or Barbora Strycova on Saturday, produced a fine display to win 6-1 6-3 in just an hour and 13 minutes.
It will be Halep's fifth grand slam final and comes just over a year after she won her first major title at the fourth attempt at the French Open.
Although both women have been top-10 stalwarts for several years, this was in many ways an unexpected semi-final clash.
Neither has been in good form, Halep dropping from world number one at this time last year to seven now, while Svitolina has struggled with a knee injury.
Both are more at home on slower surfaces, meanwhile, and there was a certain irony that, after trying for so long to overcome the quarter-final hurdle at a slam, Svitolina should finally do so on grass.
Halep had been this far before at Wimbledon but not since 2014, when she was beaten by Eugenie Bouchard.
Both players are counter-punchers and they dragged each other all over Centre Court during two mammoth games, both eventually won by Halep, that lasted 20 minutes.
Svitolina got on the board with a quick break back but it was Halep who seized control of the set thereafter, her extra attacking abilities, particularly her forehand down the line, giving her the edge.
It took her six set points to get over the line but she finally did so with a forehand winner.
Svitolina, who is coached by Englishman Andy Bettles, stayed with Halep for six games in the second set but a break for the Romanian to lead 4-3 proved the crucial moment.
Svitolina saved one match point at 3-5 with some desperate defence but netted on the second.