This verse, quoted out of context, seems to state that all flesh can now be eaten. The flaw with most people's understanding of this verse is that they fail to read what it and the surrounding verses really say. They lift verse 4 out of its context, not bothering to include relevant details from adjacent verses.
The chapter begins with a prophetic warning from Paul against false teachers and their teachings "in latter times." Their doctrines would be those of demons, and one of them commands their followers "to abstain from foods which God created to be received with thanksgiving . . ." (verse 3). Many stop right there, but the rest of the verse is vital to understanding: ". . . by those who believe and know the truth." These pesky details change the tenor of what the apostle is saying.
Notice that the subject is foods or meats in general, not necessarily unclean meats. This must be read into the passage. If we consider only the word "foods," it is just as likely that Paul means that these false teachers would preach against eating beef as against eating pork or shellfish. However, the rest of the verse modifies the term. What "foods" did God create to be received - eaten - with thanksgiving by those who believe and know the truth? The list appears in Leviticus 11 and Deuteronomy 14! God has never given mankind any other list of creatures that are divinely certified as "food."
Verses 4-5 must be taken together, as they are one thought. Paul is telling Timothy not to worry about such prohibitions because God created every creature as "good" (Genesis 1:21, 24-25, 31), and a Christian should accept what he is offered to eat with thanksgiving. Does this mean that we should not refuse skunk, badger, bear, tiger, snakes, slugs, snails, vultures, rats, horses, eel, and oysters, as long as we give thanks for it? Of course not! Again, this is not the end of the story.
I Timothy 4:5 adds important, modifying elements to what this means: ". . . for it is sanctified by the word of God and prayer." Sanctify means "to set apart for a specific use or purpose." The apostle is saying, then, that certain "creatures" are sanctified or set apart as human food - by what means? - by God's Word, the Bible! God reveals these "sanctified" meats to us in Leviticus 11 and Deuteronomy 14.
Paul adds prayer to the setting apart of these foods because we have Christ's example of asking God to bless the food before eating (see, for instance, Luke 9:16; 24:30). This further sets apart the food we are about to eat as approved and even enhanced by God, but in no way does it make unclean meat clean. Besides, Scripture gives us no authority to make such a request of God.
In summary, Paul is reiterating that 1) God has set certain foods apart for His people to eat; and 2) we should not be fooled by false teachers who claim either that anything and everything is good to eat or that certain biblically approved foods should not be eaten.