Jag tycker du borde köpa en bok i spelprogrammering, finns till XNA, så du kan lära dej det lite bättre.
Kortfattat, kör inte allt i draw metoden, det kommer medföra problem för dej längre fram.
Kortfattat så finns det tre delar (utöver laddning och sådant):
1) Input. Här läser du alla tangentnedtryckningar, var musen är och liknande. Och lagrar all data, inte processerar något.
2) Update. Här kollar du inmatningarna från 1, och uppdaterar efter det. Samt alla övriga uppdateringar, kortutdelning, förflyttning, ai osv.
3) Draw. Här tar du endast upp det grafiska som ritas på skärmen. DVS. ritar de kort osv. som ska visas på skärmen.
Sedan finns det många fler sätt att förbättra allting.
Synkronisering och liknande. Ex. input och update måste inte alltid köras på max fsp, utan på en 25 fps.
Att rita allting, behövs kanske heller inte ske allt för ofta. Ex. kör spelet på 150 fps, så skulle det räcka att klocka ned uppdateringen till 60 fps.
Det finns fall där det är bra att klocka ned spelets olika delar, och fall där det är bättre att låta det härja fritt. Men det tas upp i spelprogrammeringsböcker, som du bör läsa själv. Det är mycket teori.