What is the total table size? If the whole table is 20M rows, you're probably better off breaking replication, doing the delete, and then taking a new snapshot to start with of the table with only 5M rows now. If the table has 2B rows, obviously that would not be a good idea :-D.
If at all possible, delete the rows in batches and give replication time to get "caught up". For example, delete 40,000 rows, wait a bit, delete 40,000 more, etc.. How long to wait depends on your drive speeds, speed of the network to your replicated data, etc..
SQL DBA,SQL Server MVP(07, 08, 09) "It's a dog-eat-dog world, and I'm wearing Milk-Bone underwear." "Norm", on "Cheers". Also from "Cheers", from "Carla": "You need to know 3 things about Tortelli men: Tortelli men draw women like flies; Tortelli men treat women like flies; Tortelli men's brains are in their flies".