This is one of the classic workhorse situations of programming, a sort-merge, used just about everywhere. You sort two lists, then merge them.

The basic idea is this:

Establish a pointer to the first (lowest) entry in each list, then

Loop while any entries unmerged:

1. Compare the value you're pointing to in list 1 against the value you're pointing to in list2.

2. If list1 is lower than list2, then
a) copy the list1 entry to the next available position in list3
b) increment the list1 pointer
c) increment the list3 pointer

... and loop through again.

Imagine you have two random halves of a deck of cards, each half already sorted aces first, etc. Then you woul look at the top card of each stack, and put the lower of the two in your new pile. Keep doing this: look at the top card on each stack, and put the lower of the two on your nw pile. Eventually all the cards will be in the new pile, in order.

do (
if l2 = 10 or list1(l1) <= list2(l2) then // take a number from list1
{
list3(l3)=list1(l1)
l1++
l3++
}
else // take a number from list2
{
list3(l3)=list2(l2)
l2++
l3++
}
end if
} while l1 < 10 and l2 < 10

Yes, you have correctly sorted and printed the first list, and presumably the same for the second.
What you need to do now is to merge the two lists. Here is a possible pseudocode, if your teacher has not already covered this aspect.

Just information for you:
Your sorting algorithm is called a bubble sort. The indices of the inner loop do not need to start from zero. If you do this:
for (int j = 0; j < 10-1; j++)
{
for (int i = j+1; i < 10; i++)
...
You will reduce the sorting work by half.

Also, since you have two arrays to sort, it would be normal to make a method for sorting, so you do not repeat the loop, and better still, when you have a change to make, you do not have to do it two times.

You have declared a scanner, but you don't seem to need it. Are you supposed to read from a file for lists 1 and 2?