Views is probably your best option, using a contextual filter, and various Views Blocks
If for example the url was www.mysite.com/user/12/profile, you could list all of any number of content types where the user id matches 12.
The specific answer depends on the structure however. If you include that information, I will update this answer with more specific direction.
EDIT 1:
create a separate view for each content type you want visible on the user's page
for each, set it as a BLOCK, not a page, and set the fields and order, etc as appropriate
set a contextual filter - this will depend on your structure, but I will show one as an example and you should be able to extrapolate. Contextual Filter->Content:Author uid
Contextual Filter, When not Available -> Provide Default Value, Raw Value from URL, Path Component 2 (for /user/12/*)
go to admin/structure/blocks and you should see the new views blocks. set them to only show on user/* for example to show in the profile pages, and place the blocks in the appropriate region