Vaneesseeee - you seem to have it covered if you have got as far as intermediate - but
my main advice to anyone who asks me is…
A fully bi-lingual, and preferably 1/2 Spanish 1/2 English tutor!
Or at least one who has lived in the UK for sometime and knows our idioms and strange customs!
I was lucky enough to find such a person and he has done a great job of explaining to me the curiosities of my adopted language
Yes, practice, practice and practice even more with the locals is also a very good way of getting to grips with things!
(PS - The courses I did with this guy were mainly intensive ones, so you get your level up to speed and keep it in your head too if you are lucky
In comparison, all the other teachers I have had (English ones teaching in night school in UK, Spanish one in UK again at adult ed, etc - do not compare at all!) And don’t mention the local ones (in Spain) at the local adult ed .... Their English is virtually non existent so if you don’t understand, you are stuffed!
Hope this helps