One problem with using pagination as suggested by @crmprogdev is that the OFFSET maximum value is 2000 so the greatest number of records you could query in this way would be 52,000. Far short of the 2 Lahk (200,000) records desired.
Seems like you'll need to figure out another way of processing these records. Batch apex sounds like it's what you want at least for creating the child records.
For showing all 200,000 records on your Visualforce page look into the @ReadOnly annotation.
Normally, queries for a single Visualforce page request may not retrieve more than 50,000 rows. In read-only mode, this limit is relaxed to allow querying up to 1 million rows.
In addition to querying many more rows, the readOnly attribute also increases the maximum number of items in a collection that can be iterated over using components such as apex:dataTable, apex:dataList, and apex:repeat. This limit increased from 1,000 items to 10,000
I'm not sure how this might affect the OFFSET functionality, but you should at least be able to query the information you want. If the OFFSET functionality can't be used then you'll have to figure out a scheme for iterating through the list that is returned and displaying it on the page.
Some information can be found here and here.