Native English speakers seem to have a lot of problems getting a decent accent when learning Spanish. For all the time we spend on verb conjugations and making sure our adjectives are agreeing with our nouns, we could vastly improve our Spanish accent just by spending a fraction of that time on getting the sounds right.
The biggest complaint people have is that they just can't do it. Not true. Any human can make the sounds of any human language. You may never do it as easily or perfectly as a native, but you can do it. We all know about the trilled 'r' in Spanish. You can do it if you practice, but you must make an effort. Some people can do it rather easily, others (most in fact) have to work at it.
But, the biggest problem I hear with native English speakers is that they try to use English sounds to speak Spanish. This won't work. Every language has a unique set of sounds. Even though there may be an 's' and a 'd' and a 't', each of those letters may be very subtly different from the same letters in your native language, or any other language you have learned. Some will be more than subtly different, they can be very different. So, in order to sound Spanish, you have to use Spanish sounds.
By far, the most obvious mistake I hear in native English speakers when they learn Spanish is with the vowels. This is the most common problem point and it is the easiest to fix.
When we say a vowel in English, we have a tendency to glide the vowel into another sound. The letters 'a', 'e', and 'i' all glide into a 'y' sound, and the letters 'o' and 'u' glide into a 'w' sound. For example - say the letter 'a' aloud slowly. You'll feel and hear it glide into a 'y' sound. Try saying the letter 'o' slowly. You'll notice that it turns into a 'w' before too long.
Don't do this in Spanish! It is acceptable in English but Spanish vowels are pure and don't change. There are many words in Spanish that end in vowels, so the temptation to do this is strong. Trying saying an English 'o' but stop yourself before it turns into a 'w'. If you say the Spanish word 'coche' (car), the 'o' should not turn into a 'w' and the 'e' should sound like the 'e' in the English word 'bet', but stop it before it turns into a 'y'. Say 'co che', don't say 'co(w)ch-ay'.
There are only five vowels in Spanish and they are pure sounds. Put some effort into getting them right. Then start to work on the other, more subtle sounds of the Spanish alphabet, including of course the dreaded 'r'!
Spanish is Spanish. It is not English with different words. Don't make the mistake of using the Engish sound-set to speak Spanish. Spend a little time and effort to develop and improve your Spanish sound-set. It will be time well-spent and you will get lots of compliments on your excellent Spanish accent!