StoneyB's answer is really excellent and I will only add a few words to his keyword imitation.

Imitation includes mimicking. When you learn a foreign language you are playing a part. So listen and watch as much as you can when natives speak. Speaking certain sounds is a complex activity that necessitates to place your phonatory  organs in a particular way (lips, tongue, cheeks...), and it is all the more difficult when wanting to produce sounds that don't exist in your native language. And don't hesitate to exaggerate the mimicking in the first steps of the exercises. I'll take the example of my native language French ; the French often have difficulties saying dental consonants  /θ/ and /ð/, so I used to tell the kids I taught  not to hesitate to stick out their tongues at me when saying it. They loved it of course, but as they became more confident and at ease they would forget the tongue sticking bit but still keep the reflex of not sticking the tip of their tongue on the upper part of their palate, but have it slightly protrude between their upper and lower teeth. 

Obviously one doesn't always have natives at hands that one can imitate. For a motivated adult I'll recommend English Pronunciation/Listening on the website of this Canadian College. It is really very good with videos in which you can see people pronouncing some of the difficult sounds specific to English, and diagrams of the phonatory organs, face and profile, as well as exercises with mp3 recorded files.  

Another useful site with videos and diagrams is on the website of The University of Iowa.

The whole body is used in speaking, not only the phonatory organs. When speaking an English person, a German person or a Chinese person will not make the same body movements. Trying to imitate the hands, torso, head, shoulders, etc. movements will have you fit into the native speaker's shoes, and be more like him and come closer to your imitation of sound producing.

How to improve or get rid of an Indian English Accent?
why EF cant translate Int32.Parse in Where Condition section?

for example below code has error :

var query = (from list in dbContext.Packages
                             where list.Id == Int32.Parse(Request["Id"].ToString())
                             select list).FirstOrDefault();


i solved this problem :

Int32 ID = Int32.Parse(Request["Id"].ToString());
 var query = (from list in dbContext.Packages
                             where list.Id == ID
                             select list).FirstOrDefault();

