JK Rowling is the master of subtle foreshadowing. The entire Harry Potter series is threaded together in so many small ways that seem insignificant when first read, but everything has a greater meaning. One of the most basic examples is at the start of the first book, Harry talks to the snake at the zoo. Later we learn that he's a parseltongue and the ability is rare. But when I first read the books, Harry's ability to talk to the snake at the start was only proof of magic, nothing more. Not until later.
On the other end of the spectrum there's obvious foreshadowing. Perhaps the most cliched is:
It was a dark and stormy night...Yea, ok, so something bad's gonna happen, right? Another one which is quite common is:
I shouldn't have left the house that day, if I hadn't XXX would never have happened...Or some variation on that. Personally, I'd prefer to be surprised than to read so much heavy handed foreshadowing throughout the book that I know exactly what will happen when it happens. It takes away the excitement and the payoff for spending the time reading the book.
So how do you get the foreshadowing right?
Well, I'm no expert on this, but I can tell you what has worked for me, and what I think has worked in the books I've read.
First, don't make a big deal over the hints you've dropped. Assume your readers are smart, because they are. They don't need you to put flashing red arrows up to show them the clues. They'll see them, but they'll appreciate them a lot more if they can figure out the importance on their own. If your MC's going to get charged by a bull today, instead of blatantly saying:
I threw on my lucky red sweater, but little did I know that it was the bad luck I was going to get today...Just leave it at:
I threw on my lucky read sweater and ran out the door...
Next, don't try to get all your foreshadowing in first draft. This is near impossible if you're a pantster anyway (which I am). If you're a plotter I'm sure it's easier to slip some foreshadowing in while you're writing the first draft, but as is often the case with first drafts it might not be done well. And things change, do they not?
Once you've got the first draft done, figure out the major events, the things that can't just happen out of the blue because then your readers will be left scratching their heads (which is just as bad as them knowing it's going to happen before it happens). Once you know this, in revisions go back and slip in your clues. The off-hand comments and the seemingly inconsequential details about setting or character descriptions or whatever.