Original: Fine-grain multithreading -- such as in a barrel processor -- issues instructions for different threads after every cycle, while coarse-grain multithreading only switches to issue  instructions from another thread when the current executing thread causes some long latency events (like page fault etc.).
Simplified: Fine-grain multithreading issues instructions for different threads after every cycle, while coarse-grain multithreading only switches to issue  instructions from another thread when the current executing thread causes some long latency events (like page fault etc.).