It would be helpful to know what you’ve already tried, so folks here don’t waste time posting those same suggestions – we might be able to offer alternatives.
That said, the three main culprits of slow loading are:
1. Many PHP calls that could be hard coded (especially in the header)
2. Adding lots of plugins to do very simple things – more plugins equals more overhead – sometimes what they do can easily be replaced with some simple code in your templates or functions files.
3. Not optimizing photos for web resolution before uploading – yes WP will crunch them dimension-wise, but if they are high-res they will still slow your page load.
Other things you can try: Using a CDN for all images, make sure your stylesheet doesn’t contain tons of non-necessary styles (some themes add so many options and have to style for all those options even if you’re only using one, for example if they offer an array of a dozen different color schemas, there’s styles called for every possible combination).
You can also move any javascripts for things that are not needed on intial page rendering to your footer instead of your header (for things like forms, lightboxes, sliders, etc.).