I want to display newsletter subscribe in different pages, in different ways. Hence once I have set newsletter : subscribe to home page, it does not apply to other page by default.
How can I can assign it to different pages in different positions?
Each block can be configured in different ways. You can by default give different paths to show or not show your block. Go to /admin/structure/blocks and click on "configure".
If you need more advanced settings, then have a look at the Context module. This allows you to define all kind of rules and conditions to show a block. Very powerfull.