If I need to present some slides usually my (everyones I gues) solution was to use Powerpoint
Thing is, when using powerpoint you need to be sure that the computer where you are going to do the presentation also have the (really expensive) office package.
Either that or you need to use some alternative that not always render the slides the way you expected.
If you go with the cloud route, you will need internet access to give your presentation.
And if you are a software developer powerpoint is limited. You could get away with a bunch of html....And you can
One option is RevealJS a JS framework for presentations.
RevealJS is a full featured framework with support for themes, plugins and remote control for slides.
RevealJS is very powerfull but has some caveats.
You need to have the whole framework with the presentation, which consists of several files.
This is more of a nuisance than a real problem.
My biggest problem is that using the available themes sometimes you need to fight RevealJS to have the slide with the layout you want. RevealJS default theme does some adjustments to the layout programatically and positioning can be a pain.
For this I created a small html template for slide presentations on the desktop LightPoint.
It is a single file using grid layout for positioning. Easy to modify and easy to send.