multi threading is a light weight process, it is just a small unit of execution of a process.
in case of multi tasking there are many processes working, because of that inter process communication takes place which causes CPU overhead and takes a lot of time and money whereas in case of mutli threading there is inter thread communication so it is fast and doesn't cost much.
one more diff. is multi tasking each process has a seperate address space, whereas in case of multi threading there is one common shared address space.
Multi Threading- Only One Prograamae and different Parts of Same prograamee are run Concurrently
Multi Tasking -Multi Tasking is concernd about the Cpu and Ram Memmory i.e Multiple Task using Same Ram Memmory
Multiprogramming, multitasking, multi threading,all refer to software implementation of scheduling processes for CPU execution. Each scheduling implementation serves certain design goals that characterize a particular operating system type.